0
headers = {'x-auth-token': token,'Content-type':'application/json'}
url2="http://192.168.56.1:8081/whitelist"
print "HEaders",headers
re=requests.get(url2,headers=headers)
print re.content
r = requests.post(url2, data=json.dumps(file_as_inp))
print r
print "code:"+ str(r.status_code)
print "******************"
print "headers:"+ str(r.headers)
print "******************"
print "content:"+ str(r.content)
我正在編寫腳本以便將數據發佈到web服務。我將auth-token和內容類型的頭部和json值列表作爲有效負載傳遞。 的file_as_inp包含的JSON值的列表作爲x-auth-token在發送請求時未通過報頭
[{'ip': '10.1.2.3'}, {'ip': '10.3.4.5'}, {'ip': '10.8.9.A'}, {'ip': '0'}, {'ip':'00'}, {'ip': 'null'}, {'ip': '10.9.4.5'}, {'ip': '10.7.6.2'}]
頁眉包含:
{'Content-type': 'application/json', 'x-auth-token': u'313e95e7-ce08-46bf-8891-6d68fc615170'}
我上一個命令提示符和其他命令提示符下,我運行此腳本運行我的服務。我得到響應,200。當我打印r.headers我得到一些輸出
headers:{'Content-Length': '57', 'Access-Control-Allow-Headers': 'Content-Type', 'Access-Control-Max-Age': '21600', 'Server': 'Werkzeug/0.11.9 Python/2.7', 'Date': 'Fri, 13 May 2016 04:47:52 GMT', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': 'HEAD, GET, POST, OPTIONS', 'Content-Type': 'text/html;charset=utf-8'}
然而,當我打印r.content
,我得到下面的橫線:
content:x-auth-token not passed in header, please pass the token.
有人能告訴我在哪裏我錯了嗎?爲什麼我將上面的行作爲輸出?在將數據發佈到web服務後,我需要執行驗證並檢查IP是否有效。但是,我卡在這裏。
謝謝。我已經添加標題。我甚至根據需要得到我的腳本輸出。然而每當我運行我的腳本的第二種類型時,輸出會被追加到最後的輸出中。是嗎? –
@IramKhan - 我不確定爲什麼會發生這種情況。你應該發佈另一個問題。 – JRodDynamite
我通過以下代碼修復了它:r = requests.post(url2,data = json.dumps(file_as_inp),headers = headers) print r #re = requests.get(url2,headers = headers) print「代碼:「+ str(r.status_code) print」******************「 print」headers:「+ str(r.headers) print」** ****************「 print」content:「+ str(r.text) –