• 0

web storage works offline, but not online


Question

hello

i have a site where i use web storage ( http://en.wikipedia.org/wiki/Web_storage ) and it works offline but when i put it online, it doesnt work. vry very strange. a server cannot limit if i use web storage or not rite??? its works offline on all browsers when it is on my local server but when on online, it doesnt work.

wat could be rong????

Recommended Posts

  • 0

I use both local and session storage objects in my applications; are the domains different from offline and online? If you set a key value pair when browsing localhost, then you will not be able to access them when you are browsing www.yoursite.com (and vice-versa).

subdomains are also subject to this; web.yoursite.come can not access mail.yoursite.com objects.

  • 0

I use both local and session storage objects in my applications; are the domains different from offline and online? If you set a key value pair when browsing localhost, then you will not be able to access them when you are browsing www.yoursite.com (and vice-versa).

subdomains are also subject to this; web.yoursite.come can not access mail.yoursite.com objects.

no.

on local i use: example.ex/something and example.ex/somethingelse that works (on both)

online i use (for the same above): something.example.com and somethingelse.example.com that does not work (on either)

my feeling is that indeed that ****ing subdomain has sumthin to do with it. any workaround????

  • 0

You could move your localStorage code to the root domain (so example.com), then embed the code through an iframe on both subdomains, and send messages between the two documents as a way to do it.

do u have anywhere i can see examples or tutorials or more indepth information?

thank u

  • 0

http://www.nczonline...n-localstorage/

Edit: You'll want to ensure that no other sites can embed the code and issue commands to your code, it covers it in the article but it won't hurt to mention it again.

:laugh: this is the same exact page i looked up when i posted about maybe subdomains being a pain.....

i have several problems with that implementation......*sighs* im not sure this is going to be easy as the situation is kind of complicated.

my root domain is tecnically a subdomain....so thats going to be problematic.

if you have sum time to spare (and want to), The_Decryptor, a 1 on 1 pm session wud be nice and helpful.

tanks to all for the advice and comments

  • 0

Well, if you're in the situation where you don't control the root domain, only the subdomains, then you'd have to have one "master" subdomain, and have the second subdomain use that for storage (Using the same postMessage setup as you would use for subdomain > domain communication)

  • 0

Well, if you're in the situation where you don't control the root domain, only the subdomains, then you'd have to have one "master" subdomain, and have the second subdomain use that for storage (Using the same postMessage setup as you would use for subdomain > domain communication)

so it wud be the same implementation? ok will give it a go and see if sumthin explodes.

btw this also works on my local rite? ill implement in first in my local then pass it...

  • 0

got it to work (had some stuff to do)

i just have a very noob javascript question:


/*java script up here*/
var remoteStorage = new CrossDomainStorage("http://example.dev", "/server.html");
remoteStorage.requestValue("lookforme", function(key, value){
alert("The value for '" + key + "' is '" + value + "'");

});
alert ("alert 2 : I want to print/use value on the outside" + value);
/*javascript down here*/
[/CODE]

pretty selfexplains....i want to use value on the onside of that little variable/function (for example in that thing that says alert 2). how to do it????

  • 0

Should work, but not tested:

/*java script up here*/
var remoteStorage = new CrossDomainStorage("http://example.dev", "/server.html");
		 value = remoteStorage.requestValue("lookforme", function(key, value){
		 alert("The value for '" + key + "' is '" + value + "'");
		 return value;

		 });
alert ("alert 2 : I want to print/use value on the outside" + value);
/*javascript down here*/

  • 0

/*java script up here*/
var remoteStorageValue = "";
var remoteStorage = new CrossDomainStorage("http://example.dev", "/server.html");
                 remoteStorage.requestValue("lookforme", function(key, value){
                 alert("The value for '" + key + "' is '" + value + "'");
                 remoteStorageValue = value;
                 });
alert ("alert 2 : I want to print/use value on the outside" + remoteStorageValue);
/*javascript down here*/

You have to set the global value within the callback function, returning it won't work (Since you're assigning the return of "requestValue" to the variable, not the value of the callback which can happen at a later time)

  • 0

/*java script up here*/
var remoteStorageValue = "";
var remoteStorage = new CrossDomainStorage("http://example.dev", "/server.html");
				 remoteStorage.requestValue("lookforme", function(key, value){
				 alert("The value for '" + key + "' is '" + value + "'");
				 remoteStorageValue = value;
				 });
alert ("alert 2 : I want to print/use value on the outside" + remoteStorageValue);
/*javascript down here*/

You have to set the global value within the callback function, returning it won't work (Since you're assigning the return of "requestValue" to the variable, not the value of the callback which can happen at a later time)

i changed it to that code and it says that RemoteStorageValue ' s value is simply undefined

  • 0

It shouldn't say that since the first line sets it to "", which is different from undefined.

There is another issue of course, the second alert will fire before the callback could/will, so it won't see the value that the callback will.

  • 0

It shouldn't say that since the first line sets it to "", which is different from undefined.

There is another issue of course, the second alert will fire before the callback could/will, so it won't see the value that the callback will.

well it is undefined.....tried putting a word and same thing.

and that other issue you mentioned, may have to do with it:

there are 2 lines:

alert("The value for '" + key + "' is '" + value + "'");

alert ("alert 2 : I want to print/use value on the outside" + remoteStorageValue);

well alert 2 pops up before "the value for...." so I imagine it is because of what you mentioned. how do i fix it???

  • 0

The only way to fix it is to structure your code such that you don't try reading the value directly after issuing the cross domain call. Even if it execute instantly, JavaScript won't call your callback function until after the current function has finished executing.

If you separate your code into 2 different sections, one which asks for information and one that processes it, you could just make the first part issue the cross-domain call, and have the callback function invoke the second part of your code.

  • 0

The only way to fix it is to structure your code such that you don't try reading the value directly after issuing the cross domain call. Even if it execute instantly, JavaScript won't call your callback function until after the current function has finished executing.

If you separate your code into 2 different sections, one which asks for information and one that processes it, you could just make the first part issue the cross-domain call, and have the callback function invoke the second part of your code.

Well the only thing that comes to mind is sumkind of "sleep" function after running that cross domain call. tis will give it enough time to finish and will be able to get the valuer rite?

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Hello, Were you using a product or service from one of the companies affected by the Klue data breach?  See https://klue.com/blog/an-update-on-recent-klue-security-incident for the company's public statement.  That blog post does not list affected customer. From looking around at reports, I created this list: Gong HackerOne Huntress Insurity Jamf LastPass OneTrust Recorded Future ReliaQuest Salesforce Snyk Sprout Social Tanium It is likely there are other companies affected as well. Regards, Aryeh Goretsky  
    • SpaceX reportedly plans a Starlink mobile service for U.S. consumers by Karthik Mudaliar SpaceX reportedly wants to sell mobile phone plans directly to consumers in the United States as part of a wider expansion of Starlink. According to a report from the Financial Times, SpaceX president Gwynne Shotwell discussed the plan with investors during the company’s recent IPO roadshow. The company is also said to be considering building a terrestrial mobile network to complement Starlink’s satellite coverage. The plan is quite different from how Starlink currently operates in the U.S. mobile market. SpaceX already provides satellite connectivity for T-Mobile’s T-Satellite service, but T-Mobile remains responsible for the subscription, billing, and customer support. A Starlink-branded mobile service would give SpaceX control of the customer relationship instead. It could also turn the company from a partner of traditional mobile operators into a direct competitor. T-Mobile also began testing its Starlink-powered satellite service in early 2025. The beta was initially limited to text messaging and was also available to some AT&T and Verizon customers. The service has since expanded to support limited data access through selected apps, including WhatsApp, Google Maps, AccuWeather, and AllTrails. It is designed to provide a connection in areas where normal cell towers are unavailable, rather than replace a conventional mobile network. However, if SpaceX actually has a plan to serve nationwide, it needs to do more than just satellite networks and actually support on-ground operations. It can also partner up with existing carriers and become a mobile virtual network operator (MVNO). With that said, SpaceX has already spent heavily to support its mobile ambitions. Just last year, the company agreed to acquire wireless spectrum licences from EchoStar in deals worth a combined $19.6 billion. EchoStar's spectrum includes AWS-4, H-Block, and AWS-3 frequencies that could be used for both satellite and terrestrial communications. According to a SpaceX securities filing, the Federal Communications Commission approved the transaction in May 2026, although it is not expected to close until late 2027. There's no official statement by SpaceX for now. Pricing, availability, and other details remain unknown. Source: Financial Times
    • We had no idea as kids how much time and energy it took to be an adult 😅
    • The Trump administration doesn't want you to use OpenAI's GPT-5.6 without its approval by David Uzondu Image via @realDonalTrump (X) As OpenAI prepares the release of its next model, GPT 5.6, the White House has instructed the company to limit the distribution of the software to a small group of government-approved partners instead of the general public, as it has done with previous releases. According to The Information, OpenAI Chief Executive Officer Sam Altman sent an internal memo to staff on Thursday explaining that the federal government will approve access "customer by customer" during an initial preview phase. Altman noted in the communication that this restrictive rollout is "not [their] long-term model" for software deployment, and the company plans to work toward a "more sustainable" distribution method later. CNN said that both OpenAI and the Trump administration view the capabilities of GPT 5.6 on the same level as Anthropic's Mythos and that government officials intend to "collaborate with frontier AI labs to develop shared approaches for addressing the challenges of scaling this technology." The latest restriction comes just weeks after the US Commerce Department decided to restrict Fable, a version of Mythos with extra safety "guardrails" to prevent users from exploiting software vulnerabilities. Not long after the release, though, researchers at Amazon found a way to bypass these restrictions, prompting an aggressive response from federal authorities. The government ordered Anthropic to cut off access for non-US citizens located outside the US, non-US citizens living inside the US, and incredibly, even Anthropic's own foreign-born employees. Anthropic now appears to be building a workaround to resolve this compliance block with an update to its Privacy Policy that introduces a category called "Verification Data" to handle KYC and Digital IDs. This setup could mandate digital identity checks to filter users by nationality, requiring a government-issued ID and facial biometric data. Who knows? Maybe in the future, you would have to scan your US Passport or State ID to prove your citizenship before you are allowed to chat with Fable 5 (or any other model).
  • Recent Achievements

    • Week One Done
      xvvxcvv earned a badge
      Week One Done
    • One Month Later
      xvvxcvv earned a badge
      One Month Later
    • Enthusiast
      Xonos went up a rank
      Enthusiast
    • Conversation Starter
      Admir earned a badge
      Conversation Starter
    • First Post
      The_Focal_Point earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      400
    2. 2
      +Edouard
      170
    3. 3
      PsYcHoKiLLa
      127
    4. 4
      neufuse
      69
    5. 5
      Xenon
      66
  • Tell a friend

    Love Neowin? Tell a friend!