Mencipta respons JSON adalah penting apabila membina API REST atau aplikasi web dinamik. Berikut ialah masalah yang dihadapi oleh pembangun yang cuba menukar skrip Ajax sebelah pelayan kepada Django HttpResponse:
Isu yang dihadapi semasa menukar skrip Ajax sebelah pelayan kepada Django HttpResponse melibatkan ketidakpadanan antara output JSON yang dijangkakan dan pelaksanaan semasa. Kod Django menggunakan simplejson untuk mengekod senarai Python, yang mengakibatkan struktur JSON yang salah.
Untuk menyelesaikan isu ini, adalah disyorkan untuk menggunakan kamus Python untuk mewakili data JSON . Kamus lebih sesuai untuk pasangan nilai kunci, yang lebih sejajar dengan struktur JSON. Berikut ialah contoh:
import json from django.http import HttpResponse response_data = {} response_data['result'] = 'error' response_data['message'] = 'Some error message'
Sebelum Django 1.7, respons JSON boleh dibuat menggunakan:
return HttpResponse(json.dumps(response_data), content_type="application/json")
Dalam Django 1.7 dan lebih baharu, pendekatan yang disyorkan ialah menggunakan JsonResponse kelas:
from django.http import JsonResponse return JsonResponse({'foo': 'bar'})
Menggunakan kamus dan kaedah Django yang sesuai memastikan respons JSON diformat dengan betul dan mematuhi output yang dijangkakan.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Respons JSON dalam Django, Terutamanya Apabila Menukar dari Skrip Ajax Sisi Pelayan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!