javascript - Angular $http无法发送内容类型 header

标签 javascript angularjs

我在使用 Angular $http 和 post 方法时遇到了荒谬的错误。

发送 $http POST 请求时,它没有附加 Content-type header ,因此我收到错误“预检响应具有无效的 HTTP 状态代码 404”。 这是我的代码 -

    var obj={
        "mobile":"hello",
        "password":"asjd"
    }
$http({
    url: 'http://cbsatwork.com/laundry/api-authentication',
    method: 'POST',
    data:obj,
    headers: {
        "Content-Type": "application/json"
    }
    })

尽管如果我从代码中删除“data:obj”行,它仍然可以工作,并且我会从服务器得到通常的响应。 我研究了很多答案,但找不到任何对我有用的东西。

编辑: 我尝试使用 jQuery 中的 $.ajax() 方法,它工作得很好。没有问题。所以我不认为我的服务器有任何问题。

最佳答案

Response for preflight has invalid HTTP status code 404

此错误表明很可能存在 CORS 问题。浏览器发送两个请求。第一个请求是 OPTIONS,另一个请求是 POST,您可以在示例中进行配置。问题不太可能出在 Content-Type header 上,因为该 header 是使用 POST 发送的,而不是 OPTIONS。失败的是 OPTIONS 请求。检查您的服务器是否支持 OPTIONS 请求并发回正确的 CORS 所需 header

关于javascript - Angular $http无法发送内容类型 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40480759/

相关文章:

javascript - 在 jQuery 中使用 addClass 添加动画

javascript - Angular 如何知道构造函数参数的名称?

angularjs - 使用 Angular 进行基于 ViewModel 的验证

javascript - 将 promise 与失败串联起来

javascript - 如何让文本区域的光标在拖放时移动到突出显示文本的末尾?

javascript - 如何检测包含我的 PHP 应用程序的最后一个选项卡正在关闭?

javascript - 查找 "this"的名称

javascript - lightbox.js html5 视频不播放视频。我做错了什么?

javascript - Angular 中的动画 orderBy 列表值

javascript - 如何导入 400 多个模块,并在我的 angular-cli 项目中迭代它们?