這篇文章給大家分享的是有關(guān)django使用request怎樣獲取瀏覽器發(fā)送的參數(shù)的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。
創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供佳縣企業(yè)網(wǎng)站建設(shè),專(zhuān)注與網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、html5、小程序制作等業(yè)務(wù)。10年已為佳縣眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)的建站公司優(yōu)惠進(jìn)行中。獲取數(shù)據(jù)(四種方式)1. url: 需要正則去匹配 url(r'^index/(num)/$', view.index) 匹配到的參數(shù)會(huì)自動(dòng)傳入對(duì)應(yīng)的視圖函數(shù) 也可以給匹配到的參數(shù)起名字?Purl(r'^index/(?P \d*)(?P \w*)$',) 使用url傳參的時(shí)候,要么都使用位置參數(shù),要么都使用給參數(shù)起名字的方式 也可以通過(guò)request.path獲取到url然后獲取相應(yīng)的參數(shù). 如訪問(wèn)127.0.0.1:8000/index/ 則request.path = '/index/'2. ?號(hào)后面的鍵值對(duì)(又叫查詢(xún)字符串): 如 index/?num=55&num2=66&num=77 request.GET.get('num') # 獲取的是77 request.GET.getlist('num') # 獲取num的所有值 request.GET.get('num2') 3. 請(qǐng)求體 request.POST.get() 獲取表單數(shù)據(jù) request.body 獲取非表單數(shù)據(jù),如json request.body返回的是一個(gè)byte的對(duì)象 b'{"key":"value"}',可以通過(guò)下面方式獲取值 data = eval(request.body.decode()).get('key') data1 = json.loads(request.body).get('key') #如果request.body沒(méi)有數(shù)據(jù)上面兩條語(yǔ)句都會(huì)報(bào)錯(cuò)4. 報(bào)文頭 request.META 獲取請(qǐng)求頭信息, django會(huì)自動(dòng)把獲取到的請(qǐng)求頭全部轉(zhuǎn)化為大寫(xiě),并在前面加上HTTP,如: 請(qǐng)求頭: User-Agent:***** 獲取方式: request.META.get('HTTP_USER_AGENT')
代碼示例(獲取請(qǐng)求數(shù)據(jù))
# 獲取正則匹配到的數(shù)據(jù),num1未位置參數(shù),num2為命名參數(shù),def index(request,num2=None, num1=None): print(num2) # 構(gòu)造響應(yīng)數(shù)據(jù) reNT') sp = HttpResponse('hello world') # 獲取請(qǐng)求頭 header = request.META.get('HTTP_USER_AGE) # 獲取地址 path = request.path # 獲取 ? 后面的數(shù)據(jù)(獲取查詢(xún)字符串?dāng)?shù)據(jù)) para = request.GET # 獲取json數(shù)據(jù) json_data = request.body data = eval(request.body.decode()).get('asd') data1 = json.loads(request.body).get('asd') # 獲取表單數(shù)據(jù) form_data = request.POST # 獲取請(qǐng)求方法 method = request.method # 獲取文件 file_obj = request.FILES.get('image') return resp
感謝各位的閱讀!關(guān)于django使用request怎樣獲取瀏覽器發(fā)送的參數(shù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!