Ich baue eine Anwendung, die mit einem django Backend mit json-rpc kommuniziert. Bis jetzt hat alles gut funktioniert. Allerdings habe ich eine Anomalie beim Senden von " " gefunden. Soweit ich weiß, funktioniert die Anfrage einwandfrei, aber django interpretiert die Antwort schlecht. Ich habe eine vereinfachte Anfrage und Antwort unten reproduziert:
Anfrage:
{"jsonrpc":"2.0","id":"1","method":"test","params":
{"id":"80","name":"tests","introduction":"hello there"}}
Django erhält:
<QueryDict:u'{"jsonrpc":"2.0","id":"1","method":"test","params":
{"id":"80","name":"tests","introduction":"hello ': [u''], u'nbsp': [u''], u'there"}}': [u'']}>
Erwartete Antwort:
<QueryDict: {u'{"jsonrpc":"2.0","id":"1","method":"test","params":
{"id":"80","name":"tests","introduction":"hello there"}}': [u'']}>
Es scheint, als ob Django das & und das ; als Sonderzeichen interpretiert und so ein unerwartetes Wörterbuch in seiner request.POST-Variable erstellt.
Was muss ich tun, um sicherzustellen, dass die json-Zeichenfolge nicht missgebildet wird? Ich habe versucht, sie mit der php-Methode htmlspecialchars() zu kodieren, aber da das "&" nicht entfernt wird, bleibt das Problem bestehen.
Für jede Hilfe sind wir dankbar.