Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Ali lahko sinhroniziram podatke med zavihki v različnih domenah


Ali lahko sinhroniziram podatke med zavihki v različnih domenah


Ne, ne morete neposredno sinhronizirati podatkov med zavihki v različnih domenah z uporabo dogodkov in mehanizmov za shranjevanje, vgrajenih v brskalnik, kot sta localStorage ali sessionStorage. Dogodek »storage« in API-ji za shranjevanje brskalnika so omejeni na isto politiko izvora, kar pomeni, da delujejo samo znotraj iste domene.

Ključne omejitve so:

1. Politika istega izvora: Dogodek »shramba« in API-ji za shranjevanje brskalnika (localStorage, sessionStorage) so predmet politike istega izvora. To pomeni, da se dogodek sproži samo v drugih zavihkih/oknih, ki so iz iste domene, ne v različnih domenah.

2. Meddomenska komunikacija: Ni vgrajenega mehanizma brskalnika za neposredno sporočanje sprememb podatkov med zavihki ali okni v različnih domenah. Politika istega izvora iz varnostnih razlogov preprečuje tovrstno komunikacijo med domenami.

Če morate sinhronizirati podatke med zavihki ali okni v različnih domenah, boste morali uporabiti rešitev na strani strežnika ali storitev tretje osebe, ki lahko deluje kot posrednik. Nekatere možnosti vključujejo:

1. Sinhronizacija na strani strežnika: Za prenos sprememb podatkov med različnimi domenami lahko uporabite mehanizem na strani strežnika, kot je povezava s spletno vtičnico ali skupna baza podatkov.

2. Storitev za sporočanje tretjih oseb: Storitev za sporočanje tretjih oseb, kot je Firebase, lahko uporabite za objavo in naročanje na spremembe podatkov v različnih domenah.

3. Komunikacija med domenami po meri: Izvedete lahko mehanizem komunikacije med domenami po meri, kot je uporaba API-ja za postMessage HTML5 v kombinaciji z vmesnim okvirjem iframe ali oknom.

Vendar so te rešitve bolj zapletene in zahtevajo dodatno infrastrukturo ali storitve tretjih oseb. Vgrajena shramba brskalnika in dogodki so omejeni samo na komunikacijo istega izvora.

Če povzamemo, ne morete neposredno sinhronizirati podatkov med zavihki v različnih domenah z uporabo vgrajenega pomnilnika in dogodkov brskalnika. Za sinhronizacijo podatkov med domenami bi morali uporabiti rešitev na strani strežnika ali rešitev tretje osebe.

Citati:
[1] https://www.reddit.com/r/AZURE/comments/194hsdu/sync_files_with_customer_on_another_domain/
[2] https://www.sqlservercentral.com/forums/topic/set-up-database-sync-between-2-different-domain-servers
[3] https://torsten-muller.dev/javascript/communication-between-browser-tabs-synchronizing-state/
[4] https://nabeelvalley.co.za/blog/2024/07-03/localstorage-based-sync/
[5] https://community.cisco.com/t5/managing-users/user-identities-with-ad-sync-and-multiple-domains/td-p/4880178