HttpResponse對象
Django服務器接收到客戶端發送過來的請求後,會將提交上來的這些數據封裝成一個HttpRequest對象傳給視圖函數。
那麼視圖函數在處理完相關的邏輯後,也需要返回一個響應給瀏覽器。
而這個響應,我們必須返回HttpResponseBase或者他的子類的對象。
而HttpResponse則是HttpResponseBase用得最多的子類。
常用屬性:
content:返回的內容。
status_code:返回的HTTP響應狀態碼。
content_type:返回的數據的MIME類型,默認爲text/html。
JsonResponse類:
用來對象dump成json字符串,然後返回將json字符串封裝成Response對象返回給瀏覽器。
並且他的Content-Type是application/json。
返回的是JsonResponse對象,requests獲取後直接調用json()方法轉變爲python字典
請求獲取HttpResponse對象
import requests, json
r = requests.get('http://192.168.207.160:9000/api/qualitygates/')
state=json.loads(r.text).get('projectStatus').get('status')
- 請求的內容是json格式數據,先要loads方法反序列化爲python的字典格式,然後進行操作
{
"projectStatus": {
"status": "ERROR",
"conditions": [{
"status": "ERROR",
"metricKey": "new_security_rating",
"comparator": "GT",
"periodIndex": 1,
"errorThreshold": "1",
"actualValue": "5"
}
}
請求獲取JsonResponse對象
r = requests.get('http://192.168.207.160:9000/api/qualitygates/')
# 直接調用json方法,返回python下的字典數據
state1 = r.json()
state1.get('projectStatus')
補充
# 字典序列化成json字符串
d = {'name': 'jod'}
j = json.dumps(d)
# json字符串反序列化成字典
d = json.loads(j)