Heim > Backend-Entwicklung > Python-Tutorial > Wie erstelle ich JSON-Antworten in Django, insbesondere bei der Konvertierung von serverseitigen Ajax-Skripten?

Wie erstelle ich JSON-Antworten in Django, insbesondere bei der Konvertierung von serverseitigen Ajax-Skripten?

DDD
Freigeben: 2024-11-20 14:57:16
Original
685 Leute haben es durchsucht

How to Create JSON Responses in Django,  Especially When Converting from Server-Side Ajax Scripts?

Django zum Erstellen von JSON-Antworten verwenden

Das Erstellen von JSON-Antworten ist beim Erstellen von REST-APIs oder dynamischen Webanwendungen unerlässlich. Hier ist ein Problem, mit dem ein Entwickler konfrontiert ist, der versucht, ein serverseitiges Ajax-Skript in eine Django HttpResponse zu konvertieren:

Problemformulierung

Das Problem, das beim Konvertieren eines serverseitigen Ajax-Skripts in eine Django HttpResponse auftritt, betrifft Folgendes: eine Diskrepanz zwischen der erwarteten JSON-Ausgabe und der aktuellen Implementierung. Der Django-Code verwendet simplejson zum Codieren einer Python-Liste, was zu einer falschen JSON-Struktur führt.

Vorgeschlagene Lösung

Um dieses Problem zu beheben, wird empfohlen, ein Python-Wörterbuch zur Darstellung von JSON-Daten zu verwenden . Wörterbücher eignen sich besser für Schlüssel-Wert-Paare, die besser zur JSON-Struktur passen. Hier ist ein Beispiel:

import json

from django.http import HttpResponse

response_data = {}
response_data['result'] = 'error'
response_data['message'] = 'Some error message'
Nach dem Login kopieren

JSON HttpResponse mit Django

Vor Django 1.7 konnten JSON-Antworten erstellt werden mit:

return HttpResponse(json.dumps(response_data), content_type="application/json")
Nach dem Login kopieren

In Django 1.7 und höher Der empfohlene Ansatz ist die Verwendung der JsonResponse-Klasse:

from django.http import JsonResponse

return JsonResponse({'foo': 'bar'})
Nach dem Login kopieren

Durch die Verwendung eines Wörterbuchs und der entsprechenden Django-Methode wird sichergestellt, dass die JSON-Antwort ordnungsgemäß formatiert ist und der erwarteten Ausgabe entspricht.

Das obige ist der detaillierte Inhalt vonWie erstelle ich JSON-Antworten in Django, insbesondere bei der Konvertierung von serverseitigen Ajax-Skripten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage