后端
HttpReqeust對象
服務(wù)器接受到http 協(xié)議的請求后怨规,會根據(jù)報文創(chuàng)建HttpReqeust對象
試圖函數(shù)的地一個參數(shù)是HttpReqeust對象
在django.http模塊中定義了HttpReqeust對象的APL屬性
path 一個字符串氯质,表示請求頁面的完整路徑,不包含域名
method 一個字符串,表示請求使用的HTTP方法柴我,常用的值包括:GET POST
encding 一個字符串媒区,表示提交的數(shù)據(jù)編碼方式
如果為None則表示使用瀏覽器的默認設(shè)置,一般為utf-8
這個屬性是可寫的已脓,可以通過修改它來修改訪問表單數(shù)據(jù)使用的編碼珊楼,接下來對屬性的任何訪問將使用新的encoding值
GET 一個類似于字典的對象,包含get請求方式的所有參數(shù)
POST 一個類似于字典的對象度液,包含post請求的所有參數(shù)
FLES 一個類似于字典的對象厕宗,包含所有上傳文件
COOKES 一個標(biāo)準(zhǔn)的python字典画舌,包含所有cookie,鍵和值都為字符串
SESSION 一個既可讀又可寫的類似于字典的對象媳瞪,表示當(dāng)前的會話骗炉,只有當(dāng)Django 啟用會話的支持時才可用,詳細內(nèi)容見“狀態(tài)保持“
方法
is_ajax():如果請求是通過XMLHttpRequest發(fā)起的蛇受,則返回True
QueryDict對象
定義在django.http.QueryDict
request對象的屬性GET句葵、POST都是QueryDict類型的對象
與python字典不同,QueryDict類型的對象用來處理同一個鍵帶有多個值的情況
方法get():根據(jù)鍵獲取值
只能獲取鍵的一個值
如果一個鍵同時擁有多個值兢仰,獲取最后一個值
* dict.get('鍵',default)或簡寫為dict['鍵'] *
方法getlist():根據(jù)鍵獲取值
將鍵的值以列表返回乍丈,可以獲取一個鍵的多個值
* dict.getlist('鍵',default)
GET屬性
* QueryDict類型的對象
包含get請求方式的所有參數(shù)
與url請求地址中的參數(shù)對應(yīng),位于?后面
參數(shù)的格式是鍵值對把将,如key1=value1 *
多個參數(shù)之間轻专,使用&連接,如key1=value1&key2=value2
鍵是開發(fā)人員定下來的察蹲,值是可變的
示例如下
創(chuàng)建視圖getTest1用于定義鏈接请垛,getTest2用于接收一鍵一值,getTest3用于接收一鍵多值
*
*def getTest1(request):
return render(request,'booktest/getTest1.html')
def getTest2(request):
return render(request,'booktest/getTest2.html')
def getTest3(request):
return render(request,'booktest/getTest3.html')
配置url
* url(r'^getTest1/$', views.getTest1),
url(r'^getTest2/$', views.getTest2),
url(r'^getTest3/$', views.getTest3),
顯示接受結(jié)果
*
Title
>a:{% for item in a %}{{ item }}
{% endfor %}
b:{{ b }}