我在Parse Cloud中尝试这个POST函数,并且在http响应代码302中抛出它的错误。有谁能告诉我如何解决这个问题?
Parse.Cloud.httpRequest({
method: 'POST',
url: 'http://siteabcd.com/auth.action',
body: {
username: 'user',
password: 'pass',
button: 'Login',
},
headers: {
'User-Agent' : "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2"
},
success: function(httpResponse){
alert("response:"+httpResponse.text+"---header length:"+httpResponse.headers.length);
response.success("Message Sent");
},
error: function(httpResponse){
console.error('Request failed with response code ' + httpResponse.status);
response.error("Message Not Sent");
}
});
答案 0 :(得分:2)
@dimitri指出302
表示重定向。例如,如果您前往瑞典的http://google.com
,Google很可能会先发送302回复,然后转到http://google.se
。也可能是域名从http
版本重定向到https
或类似名称。
Parse在他们的sdk中还没有支持重定向。解决此问题的最简单方法是查看302响应res.get('Location');
中的Location标头,并相应地更新您发送请求的网址。
答案 1 :(得分:1)