0
さまざまなヘッダーと括弧付きフォームデータを持つ リクエストをシミュレートしようとしています。フォームデータを使用したPOST要求
フォームデータ:
import requests
reqUrl = 'http://website.com/login'
postHeaders = {
'Accept': '*/*',
'Accept-Encoding': 'gzip,deflate',
'Accept-Language': 'en-US,en;q=0.8',
'Connection': 'keep-alive',
'Content-Length': '68',
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Host': 'website.com',
'Origin': 'http://www.website.com',
'Referer': 'http://www.website.com/',
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/37.0.2062.120 Chrome/37.0.2062.120 Safari/537.36'
}
payload = {"username": "MY_USERNAME",
"pass": "MY_PASS",
"AUTO": "true"
}
session = requests.Session()
response = session.post(reqUrl, data=payload, headers=postHeaders)
は私が応答を受信しています:
クローム のコンソールに示すフォームデータである{"username": "MY_USERNAME", "pass": "MY_PASS", "AUTO": "true"}
だから私は、Pythonのrequests
ライブラリと一緒にそれを入れてみましたそれは示す:
{"status":"failure","error":"Invalid request data"}
私は行くフォームデータの間違った実装について私はまた、Content-Length
を変更する必要があると考えていましたか?
すぎて先に自分の手に入れました。投稿されたヘッダーに変更されましたが、同じエラーが表示されています。 –
@ ZacharyWeeden:Chromeに実際に投稿されているものを3回確認します。そこに他のヘッダー(おそらく署名データなど)がある場合は3回確認してください。そして、JSONを送信していないことは確かですか? –
@ ZacharyWeeden:また、HTTPステータスコードは何ですか? –