Пожалуйста, смотрите этот родственный вопрос для фона к этому:Можно ли изменить механизм, загружающий рабочего в общих веб-рабочих?
How can I load a shared web worker with a user-script?
С этим вопросом в виду, я хочу, чтобы изучить возможность (в контексте пользовательского сценария) модифицирующих конструктор Shared работник так что механизм, ответственный за загрузку веб-работника, заменяется функцией GM GM_xmlhttpRequest
, которая работает как XMLHttpRequest
при игнорировании политик того же происхождения.
Чтобы быть ясным, я пишу сценарий пользователя для переполнения стека, чтобы помочь автоматизировать определенный процесс для себя и других, и мне нужно установить связь между двумя открытыми вкладками SO, которые могут быть выполнены с помощью общего веб-рабочего , однако, если вы посмотрите на соответствующий вопрос, который я привел, есть проблемы с этим.
Можно ли изменить механизм, который загружает рабочего в общих веб-рабочих? Использует ли он родной файл XMLHttpRequest
или это какая-то внутренняя функция, которую мы не можем коснуться? Если он может быть изменен, как я могу получить к нему доступ, чтобы выполнить модификацию?
Вы также можете использовать событие 'storage' для связи между вкладками. Не пробовал пользовательский скрипт, хотя должно быть возможно использование '.createObjectURL()', если в одном и том же происхождении? – guest271314
@ guest271314 О! Мой «план B» предполагал использование локального или сеансового хранилища для связи, но я собирался сделать что-то постыдное, чтобы выполнить его: проверьте переменные изменения с постоянным интервалом :(Спасибо, это намного лучше! –
См. Http: // stackoverflow .com/questions/38034647/javascript-session-storage-variable-on-another-page, http://stackoverflow.com/questions/38343802/how-to-pass-data-from-one-html-page-to -second-in-php /. Может также быть возможно использовать 'filesystem:' если вкладки оба с одинаковым исходным кодом – guest271314