2012-03-31 5 views
0

Edite: verfeinert den Code nach Beratung in den Kommentaren, aber immer noch kein Glück

Update: Dank ThiefMaster nach dem Rat, den ich folgende einen Fehler in meiner Ansicht Funktion gefunden, aber es jetzt in django Debug-I

Forbidden (403) erhalten

CSRF Überprüfung fehlgeschlagen nach dem Fixieren. Anfrage abgebrochen. Hilfe Grund angegeben für Fehler: CSRF-Token fehlt oder ist falsch.


Ich versuche, Jquery Ajax zu verwenden JSON-Daten zu senden

hier Code meines js

$("#send").click(function() { 
    var events = $('#calendar').fullCalendar('clientEvents'); 
    console.log(events); 
    var filter = []; 
    filter[0] = 'start'; 
    filter[1] = 'end'; 
    filter[2] = 'title'; 
    events = JSON.stringify(events, filter, '\t'); 
    console.log(events); 
    $.ajax({ 
     type: "POST", 
     data: {events: events}, 
     url: <my_url>, 
    }); 
}); 

auf Chrom DevTool django alles bis zum letzten $ .ajax ok()

es wirft diesen Fehler Fehler beim Laden der Ressource: Der Server antwortete mit einem Status von 403 (OK)

Wenn jemand herausfinden kann, was mache ich falsch bitte vor

Dank im Voraus gehen sollte

+1

, dass ein Fehler von Ihrem Server ist. Überprüfen Sie Ihre Serverprotokolle oder was auch immer. – Pointy

+0

Fyi, der bessere Weg, um ein Array zu erstellen, ist '[]' anstelle von 'new Array()' (dasselbe gilt für Objekte, es ist '{}' anstelle von 'new Object()') – ThiefMaster

+0

Sie sollten auch Ihre Variablen machen lokal mit 'var'; Der Code sieht nicht so aus, als müssten die "Ereignisse" global sein. – ThiefMaster

Antwort

0

data: "events"data: events sein. Ihr Server mag möglicherweise keine Nicht-Json-Nutzlast.

Sie möchten auch contentType: 'application/json' hinzufügen, da Sie json, nicht formcodierte Werte, posten möchten. Wenn Sie aber erwarten, form-codierte Werte auf der Serverseite jedoch, verwenden Sie data: {events: events}, um ein POST-Datenfeld events zu erhalten, das die JSON-Zeichenfolge enthält.

+0

Bearbeitete den Code und immer noch nicht funktioniert und erwähnenswert Ich entwickle auf meinem lokalen ubuntu Maschine – UXE

+0

versuchte, was Sie sagten, aber immer noch nicht mit dem gleichen Fehler – UXE

+0

Dank für Hilfe, Ihr Rat zur Überprüfung der Django-Ausgabe löste einen Teil des Problems , Ich fand Fehler in meiner Sicht verursacht die 500 Seite, aber jetzt bin ich Gitteng 403 Fehler mit dieser msg CSRF Überprüfung fehlgeschlagen. Anfrage abgebrochen. Grund für Fehler angegeben: CSRF-Token fehlt oder ist falsch. – UXE