CORS出错 - Angularjs $ http.post

时间:2017-02-14 12:07:03

标签: javascript angularjs cors

我正在尝试$ http.post,但是这个回复给了我这个错误。

  

XMLHttpRequest无法加载http://XXXXXXXXX:2222/server/api/v1/controllers。预检的响应具有无效的HTTP状态代码403

我在互联网上看到的所有内容都是CORS的错误,我试图解决这个问题但没有成功。

这是我的$ http.post方法。

        // Set the Content-Type 
        $http.defaults.headers.post["Content-Type"] = "application/json";

        // Delete the Requested With Header
        delete $http.defaults.headers.common['X-Requested-With'];



        var config = {
            method: 'POST',
            headers: {'Content-Type': 'application/json; charset=utf-8'}
         }

        $http.post("http://XXXXXXXXX:2222/server/api/v1/controllers", objToSave , config)
          .then(function successCallback(response) {
            // this callback will be called asynchronously
            // when the response is available
            console.log(response)
          }, function errorCallback(error) {
            // called asynchronously if an error occurs
            // or server returns response with an error status.
            console.log(error)
          });

我使用的是Angular v1.5.5。

我希望你能帮助我,

问候!

1 个答案:

答案 0 :(得分:2)

chrome首先发送预检请求以检查服务器是否正确响应。如果服务器正确处理该预检请求,则原始请求将由chrome发送。尝试在服务器请求处理程序头中添加以下行。

Access-Control-Allow-Origin: *