Je suis récemment passé à la fermeture de Google pour un nouveau projet. J'ai du mal à ajouter le jeton d'authenticité aux en-têtes dans un appel ajax. Comment je m'en occupe?Comment ajouter le jeton d'authenticité?
Mon bout Ajax (en utilisant la classe goog.net.XhrIo):
var initialHTMLContent = superField[i].getCleanContents();
var data = goog.Uri.QueryData.createFromMap(new goog.structs.Map({
body: initialHTMLContent
}));
goog.net.XhrIo.send('/blogs/create', function(e) {
var xhr = /** @type {goog.net.XhrIo} */ (e.target);
alert(xhr.getResponseXml());
}, 'POST', data.toString(), {
'Accept' : 'text/xml'
});
utilisant des rails dans le back-end.
MISE À JOUR:
Log:
Processing BlogsController#create (for 127.0.0.1 at 2010-06-29 20:18:46) [PUT]
Parameters: {"authenticity_token"=>""}
ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):
Rendered rescues/_trace (272.4ms)
Rendered rescues/_request_and_response (1.2ms)
Rendering rescues/layout (unprocessable_entity)
je reçois un '#'. Peut-être ne prend-il pas en compte le jeton d'authentification? J'ai mis à jour ma question avec le journal. –
J'ai mis à jour la réponse en conséquence. Semble que vous avez cet appel dans un fichier javascript simple. Vous devez générer le jeton sur le serveur, vous devez donc le faire dans une vue. –
J'ai mis à jour ma question. Ce n'est pas prendre en compte le jeton d'authentification quoi que ce soit. –