[英]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.