Utilizzo Google App Engine, Jquery e Django. Voglio dati POST da inviare al lato server quando viene inviato un modulo e io farlo in JQuery con il seguente codice:jQuery La richiesta AJAX viene chiamata due volte quando si utilizza Jquery, Django e Google App Engine
$("#listform").submit(function() {
$.ajax({
type: "POST",
url: "/xhrtest",
data: {'name': 'herman'},
success: function(data){
console.log(data)
}
});
})
A mio avviso Django:
def xhrtest(request):
if request.method == "POST":
return HttpResponse("Post data!")
else:
return HttpResponse("GET request.")
avrei dovrebbe ricevere una risposta di "Post data!", ma in qualche modo la risposta è sempre "GET request". Anche questo non è un problema unicode, dal momento che si può stampare il metodo request.method e vedere "GET".
Nel valutare questo in Firebug, vedo passare due richieste: prima una richiesta POST, che riceve la risposta "GET request". e poi una richiesta GET, che riceve la risposta "Richiedi richiesta". anche. Nella console di sviluppo di Google App Engine posso anche vedere passare due richieste. La richiesta POST viene soddisfatta con una risposta 301 e GET con 200.
Che cosa significa e che cosa devo fare essere in grado di ricevere i dati POST?
Is request.method (nel codice django) nel caso corretto? Se è "post", non sarà uguale a "POST". – kevingessner
Qualche configurazione del server sta reindirizzando le tue richieste POST, sembra. (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html) – mkoistinen