簡體   English   中英

嘗試使用 python 機械化執行 HTTP POST 時出現 400 錯誤請求錯誤

[英]400 bad request error when trying to do a HTTP POST using python mechanize

在 firefox 中執行 HTTP POST 時,我使用 Live HTTP 標頭檢查了標頭信息,然后我嘗試使用 mechanize 執行此操作,這給我帶來了錯誤請求這是我的代碼:

MechBrowser = mechanize.Browser()

LoginUrl = "http://example.com"
LoginHeader = {"User-Agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 GTB7.1 (.NET CLR 3.5.30729)", "referer": "http://example.com"}
LoginData = "example=&hello=hi"

LoginReq = urllib2.Request(LoginUrl, LoginData, LoginHeader)
LoginResposne = MechBrowser.open(LoginReq)

變量是從 LiveHTTPHeaders 復制的,我仍然收到 400 錯誤。 有什么遺漏嗎?

該請求實際上需要隱藏的信息,LiveHTTPHeaders 沒有捕獲到,所以我求助於 fiddler 以獲得更詳細的報告和分析,問題解決了。

400是一個非常模糊的響應代碼。 某些原因可能是無效或缺少HostContent-Length標頭。

從我的網絡服務器編程中,我可以告訴你,你只需要“http://example.com?example=&hello=hi”。(只需加入你的 url 和帶有 & 符號的數據。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM