当我收到来自 url 的请求时,如下所示:
$http({
method: 'GET',
url:'http://mooc-lms.dev.web.nd/v0.3/users/login'
}).success(function(data, status, headers, config) {
//code
});
但我得到的错误是:
GET http://mooc-lms.dev.web.nd/v0.3/users/login 405 (Method Not Allowed)
但是,如果我将方法从“GET”更改为“POST”,错误是:
POST http://mooc-lms.dev.web.nd/v0.3/users/login 415 (Unsupported Media Type)
有什么问题吗?网址有问题吗(http://mooc-lms.dev.web.nd/v0.3/users/login http://mooc-lms.dev.web.nd/v0.3/users/login)?我在网址中发现 '"message":"Request method 'GET' not support"'。
原因是GET
不工作是服务器不支持GET
对于登录端点,这并不奇怪。最常见的原因是获得HTTP 415
响应于POST
请求是因为服务器要求您指定一个Content-Type
and/or Accept
在您的请求标头中。
我下面的示例将它们设置为application/json
,这很常见,但并不普遍,因此您必须检查服务器需要什么,以及它将返回什么。鉴于该地址包含“mooc-lms”,我假设您正在学习某种在线课程。它应该为您提供该信息。该文档还应该告诉您需要使用 data 属性发送哪些数据。
$http({
method: 'POST',
url: 'http://mooc-lms.dev.web.nd/v0.3/users/login',
headers: {
'Content-Type': 'application/json', /*or whatever type is relevant */
'Accept': 'application/json' /* ditto */
},
data: {
/* You probably need to send some data if you plan to log in */
}
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)