[英]Logging Into Site Using Javascript HTTP Request?
我正在嘗試使用http請求和解析登錄我的nike帳戶。 這是我的要求:
Parse.Cloud.httpRequest({
method: 'POST',
headers: {
'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8'
},
url: 'https://www.nike.com/profile/login',
params: {
'Content-Locale' : 'en_US',
},
body: {
'login' : <userId>,
'rememberMe' : 'true',
'password' : '<password>'
}
}).then(function(httpResponse) {
//Log
console.log(httpResponse.text);
}, function(httpResponse) {
//Log
console.error('Request failed with response code ' + httpResponse.status);
});
我正在使用休息來調用我的函數,它正常工作。 唯一的問題是它不斷返回403
錯誤。 我的請求有什么問題嗎?
以下是我通過瀏覽器登錄時在Safari中找到的實際請求的所有信息(注意:我是http請求的新手)。
上面的圖像是使用Web瀏覽器進行的有效登錄。
此外,這里是請求和響應部分的圖像,以獲取更多詳細信息:
我不相信你的請求結構有任何問題,如果你一直看到403 - Forbidden
響應。 這意味着您的請求因跨域限制,不正確或意外的請求標頭和/或欺騙您的引薦來源和來源等而被拒絕。
但是,如果不了解耐克登錄服務的細節,我們只能推測。
我希望看到其他HTTP響應,如400 Bad Request
, 406 Not Acceptable
, 500 Timeout
等,如果您的請求存在根本性錯誤。
要正確回答,我們需要了解有關您的請求的環境的更多詳細信息。 這是本地服務器嗎? 您是Nike開發人員,可以訪問內部nike.com環境嗎? 這個HTTP請求從哪里發起?
我建議的最好的信息是一些幫助進一步排除故障的工具:
我還不能發布超過2個鏈接,但搜索cross origin access
和http status codes
以獲取有關常規HTTP請求的更多詳細信息。
作為rkd sais,403是禁止的。 服務器拒絕您的請求。 我認為不是跨源限制,因為在第二個圖像中,Apperars是Access-control-allowed:true 。 檢查是否有先前的cookie設置。 看看第一個圖像,如果有一個“set-cookie”並且它是值,則在標題中。 但是,為了獲得更好的響應,需要有關標頭的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.