Thanks a lot Fred.

I should have added: I am not using the Cookie Store, but
ActionDispatch::Session::CacheStore (Dalli in my case). But I am not
sure how it helps. Is there a way to tell which browser window / tab
is making the request (via a unique ID)?

Thanks!
PJ

On Jan 3, 11:44 am, Frederick Cheung <[email protected]>
wrote:
> On Thursday, January 3, 2013 11:26:25 AM UTC, PierreW wrote:
>
> > Here is the situation:
> > - the client makes a request
> > - it is followed by AJAX polling
>
> > The server needs to keep track of some stuff during this process.
>
> > I have been using the Session and it "mostly" works… until the user
> > decides to open another tab in her browser and she makes a new,
> > parallel request. In this case, the data from the two requests is
> > merged, which leads to bugs.
>
> Actually it's far more likely to be overwritten completely.
>
>
>
> > This got discussed quite a bit several years back, but I could not
> > find any recent "recommended" solution to handle this. Does it exist?
>
> Personally i think this can't be solved with the cookie store: any given
> request handler can't know what might have happened to the session in
> another request. A long time ago i wrote a database backed session store
> that tried to handle this gracefully (smart_session_store). As long as the
> different actions were using different keys in the session it worked fine.
> If you need more sophisticated merging behaviour I would suggest that the
> session isn't the write data store for you
>
> Fred
>
>
>
>
>
>
>
> > I read in this article (http://stackoverflow.com/questions/7570255/
> > rails-store-unique-data-for-each-open-tab-window<http://stackoverflow.com/questions/7570255/rails-store-unique-data-fo...>)
> > that an option could
> > be to prefix the URLs, but it seems quite complicated to me.
>
> > Thanks a lot!
> > PJ

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to