第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用Django和Python創(chuàng)建JSON響應(yīng)

使用Django和Python創(chuàng)建JSON響應(yīng)

胡子哥哥 2019-06-28 15:45:30
使用Django和Python創(chuàng)建JSON響應(yīng)我正在嘗試將服務(wù)器端Ajax響應(yīng)腳本轉(zhuǎn)換為Django HttpResponse,但顯然它不起作用。這是服務(wù)器端腳本:/* RECEIVE VALUE */$validateValue=$_POST['validateValue'];$validateId=$_POST['validateId'];$validateError=$_POST['validateError'];/* RETURN VALUE */$arrayToJs = array();$arrayToJs[0] = $validateId;$arrayToJs[1] = $validateError;if($validateValue =="Testuser"){  // Validate??     $arrayToJs[2] = "true";       // RETURN TRUE     echo '{"jsonValidateReturn":'.json_encode($arrayToJs).'}';  // RETURN ARRAY WITH success}else{     for($x=0;$x<1000000;$x++){         if($x == 990000){             $arrayToJs[2] = "false";             echo '{"jsonValidateReturn":'.json_encode($arrayToJs).'}';   // RETURNS ARRAY WITH ERROR.         }     }}這是轉(zhuǎn)換后的代碼def validate_user(request):     if request.method == 'POST':         vld_value = request.POST.get('validateValue')         vld_id = request.POST.get('validateId')         vld_error = request.POST.get('validateError')         array_to_js = [vld_id, vld_error, False]         if vld_value == "TestUser":             array_to_js[2] = True             x = simplejson.dumps(array_to_js)             return HttpResponse(x)         else:             array_to_js[2] = False             x = simplejson.dumps(array_to_js)             error = 'Error'             return render_to_response('index.html',{'error':error},context_instance=RequestContext(request))     return render_to_response('index.html',context_instance=RequestContext(request))我使用simplejson對(duì)Python列表進(jìn)行編碼(因此它將返回一個(gè)JSON數(shù)組)。我還不知道這個(gè)問題。但我覺得我對(duì)“回聲”做錯(cuò)了什么。
查看完整描述

3 回答

?
慕斯709654

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊

我通常使用字典,而不是列表來返回JSON內(nèi)容。

import jsonfrom django.http import HttpResponseresponse_data = {}response_data['result'] = 'error'response_data['message'] = 'Some error message'

前Django 1.7您會(huì)這樣返回它:

return HttpResponse(json.dumps(response_data), content_type="application/json")

如果Django 1.7+,請(qǐng)使用JsonResponse如圖所示這個(gè)答案就像這樣:

from django.http import JsonResponsereturn JsonResponse({'foo':'bar'})


查看完整回答
反對(duì) 回復(fù) 2019-06-28
?
慕勒3428872

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊

Django新設(shè)1.7

你可以用JsonResponse物品。

從醫(yī)生那里:

from django.http import JsonResponsereturn JsonResponse({'foo':'bar'})


查看完整回答
反對(duì) 回復(fù) 2019-06-28
?
ibeautiful

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊

我用這個(gè),效果很好。

from django.utils import simplejsonfrom django.http import HttpResponsedef some_view(request):
    to_json = {
        "key1": "value1",
        "key2": "value2"
    }
    return HttpResponse(simplejson.dumps(to_json), mimetype='application/json')

備選方案:

from django.utils import simplejsonclass JsonResponse(HttpResponse):
    """
        JSON response
    """
    def __init__(self, content, mimetype='application/json', status=None, content_type=None):
        super(JsonResponse, self).__init__(
            content=simplejson.dumps(content),
            mimetype=mimetype,
            status=status,
            content_type=content_type,
        )

在Django 1.7JsonResponse對(duì)象已經(jīng)添加到Django框架本身,這使得這項(xiàng)任務(wù)更加容易:

from django.http import JsonResponsedef some_view(request):
    return JsonResponse({"key": "value"})


查看完整回答
反對(duì) 回復(fù) 2019-06-28
  • 3 回答
  • 0 關(guān)注
  • 626 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)