È possibile memorizzare i dati tra domini utilizzando uno script Greasemonkey? Voglio consentire l'accesso a un oggetto Javascript da più siti Web che utilizzano lo stesso script Greasemonkey.Archiviazione locale tra domini tramite uno script Greasemonkey
risposta
Sì, questo è uno degli scopi di GM_setvalue()
, memorizza i dati, per script e tra domini.
Fare attenzione che lo standard di torbiera GM_setValue()
è in qualche modo problematico. Può utilizzare molte risorse globali o causare l'arresto anomalo di un'istanza di script.
Ecco alcune linee guida:
Non utilizzare
GM_setValue()
per memorizzare qualsiasi cosa, ma le stringhe. Per qualsiasi altra cosa, utilizzare un serializzatore come GM_SuperValue. Persino interi innocenti possono causare l'arresto anomalo delloGM_setValue()
predefinito.Anziché memorizzare un sacco di piccole variabili, potrebbe essere meglio racchiuderle in un oggetto e memorizzarle con uno dei serializzatori.
infine notare che localStorage
ha un significato specifico in javascript, e localStorage
è dominio specifico.
http://wiki.greasespot.net/GM_setValue
foo = "This is a string";
GM_setValue('myEntry', foo);
http://wiki.greasespot.net/GM_getValue
bar = GM_getValue('myEntry');
bar = GM_getValue('myOtherEntry', "default value if no value was found");
http://wiki.greasespot.net/GM_deleteValue
GM_deleteValue('myEntry');
GM_deleteValue('myOtherEntry');
https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage
foo = "this is a string";
localStorage.setItem('myEntry', foo);
bar = localStorage.getItem('pointer') || "default value";
localStorage.removeItem('myEntry');
o semplicemente ...
localStorage.myEntry = "this is a string";
bar = localStorage.myEntry;
Non hai risolto i dubbi relativi all'intero dominio della domanda. –
penso che potrebbe essere possibile memorizzare i dati utilizzando 'GM_setvalue', ma non sono sicuro se può essere condiviso tra domini. –
La documentazione pertinente per 'GM_setvalue' può essere trovata qui: http://wiki.greasespot.net/GM_setValue –
Potrebbe essere possibile condividere dati tra gli script in qualche modo: https://www.google.com/#hl=en&tbo= d & sclient = psy-ab & q = + Greasemonkey quota + dati + tra + script e oq = + Greasemonkey azionari + dati & gs_l = hp.3.0.0i30.631.7873.0.8967.37.28.5.0.0.1.466.3611.20j3j2j1j2.28.0.les% 3Beqn% 2Ccconf% 3D1-2% 2Cmin_length% 3D2% 2Crate_low% 3D0-035% 2Crate_high% 3D0-035% 2Csecond_pass% 3Dfalse% 2Cnum_suggestions% 3D2% 2Cignore_bad_origquery% 3Dtrue% 2Conetoken% 3Dfalse..0.0 ... 1c.1.zI9OfljWoTg & PBX = 1 & BAV = on .2, or.r_gc.r_pw.r_cp.r_qf. & Bvm = bv.1355325884, d.dmQ & fp = 71808782448558fd & bpcl = 39967673 & biw = 1366 & bih = 631 –