0

Я пытаюсь использовать переменную между двумя различными скриптами Tampermonkey, работающими на двух отдельных вкладках.Обмен переменными между двумя отдельными сценариями

Я попытался использовать GM_setValue в одном скрипте, а затем получить его с помощью GM_getValue в другом, но без каких-либо успехов, поэтому я предполагаю, что для каждого скрипта есть отдельное хранилище.

Есть ли простой способ сделать это? Я просто пропустил что-то простое? Могу ли я каким-то образом заставить оба сценария использовать одно и то же хранилище?

+1

Объединить сценарии, тогда сценарий может использовать 'GM_setValue' для связи между экземплярами. Или используйте обмен сообщениями; См. Http://stackoverflow.com/questions/11769066/how-can-two-instances-of-a-userscript-communicate-between-frames. –

ответ

1

Да, вы можете. Вы можете использовать localStorage, или вы можете использовать базу данных на своем сервере и получить/установить значения с помощью AJAX.

+1

Я должен был упомянуть, что оба сценария работают на разных доменах, поэтому localStorage не будет работать. Я не хочу использовать сервер для чего-то такого простого, если только это не единственный способ, я уверен, что должен быть способ сделать это локально. – Woozie

+0

Нет, на самом деле это не так просто. Представьте себе случай, когда Site1 и Site2 принадлежат другим людям. Если экипаж Site1 может достичь сценария, используемого для Site2, тогда не было никакой гарантии, что они не будут красть данные с сайта2. По соображениям безопасности вам необходимо использовать сервер. –

+0

Я понимаю причины безопасности для обычных скриптов, но поскольку это пользовательский скрипт, работающий в среде песочницы, а не непосредственно в контексте страницы, я надеялся, что есть способ сделать это в Tampermonkey. – Woozie

Смежные вопросы