On 19 Nov 2008, at 19:16, Anjan Tek wrote:
> Thanks. I'll look closer into that. But I was testing on Safari (Mac)
> and not Firefox.
>
> But lately, I've been having more problems with the authentication /
> session ID stuff. More of my actions started giving me the same
> error. I
> ended up just switching off the verification authenticity globally. It
> seems to be such a pain to configure when you are not using plain
> erb/rhtml web apps.
>
> And surprisingly few people seem to know about these issues.
Issues that can be overcome very easily (see below). It is a very bad
idea to disable the authenticity token, it was put in place to protect
your site from malicious attacks.
> Thanks again. I just had quick scan over that post you linked to. I'll
> give it a closer look.
The solution is pretty simple to be honest:
In your view layout file, add this to the <header> section:
<script type="text/javascript" charset="utf-8">
window._token = '<%= form_authenticity_token -%>';
</script>
In application.js, add the following:
Ajax.Base.prototype.initialize = Ajax.Base.prototype.initialize.wrap(
function(p, options){
p(options);
this.options.parameters = this.options.parameters || {};
this.options.parameters.authenticity_token = window._token || '';
}
);
It will automatically add the authenticity token to ALL ajax requests,
even those you invoke from custom code (graceful degrading and/or even
delegated events for example).
A similar solution for those swapping out Prototype with JQuery has
been posted at http://henrik.nyh.se/2008/05/rails-authenticity-token-with-jquery
As for file uploaders, a normal field within a form (multipart=true)
will be sent as part of the form (and isn't an ajax request in the
first place) and shouldn't be a problem. If you are using ANY other
"ajax" uploader, there's more to it. I already posted several times on
how to get SWFUpload to play nicely with Rails, an overview with links
to the appropriate posts can be found here:
http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/45f70281a5992fa7
Best regards
Peter De Berdt
--~--~---------~--~----~------------~-------~--~----~
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 this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---