【问题标题】:XMLHttpRequest cannot load url Response for preflight has invalid HTTP status code 404XMLHttpRequest 无法加载 url 预检响应具有无效的 HTTP 状态代码 404
【发布时间】:2016-04-10 03:49:35
【问题描述】:

我已使用其余 API 将我的 Json 数据加载到另一个 iis 服务器中。允许访问控制源已经可以正常工作。但它只是用于 get 方法。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<httpProtocol>
   <customHeaders>
   <add name="Access-Control-Allow-Origin" value="*" />
   <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE" />
   <add name="Access-Control-Request-Methods" value="GET, POST, PUT, DELETE" />
   <add name="Access-Control-Allow-Headers" value="X-Requested-With,Access-Control-Request-Method,Access-Control-Request-Headers, accept, Content-Type" /> 
   <add name="Access-Control-Request-Headers" value="X-Requested-With,Access-Control-Request-Method,Access-Control-Request-Headers, accept, Content-Type" /> 

   </customHeaders>
 </httpProtocol>

</system.webServer>
</configuration>

对于 put 或 delete 或 update 方法,它发生后

XMLHttpRequest 无法加载 url 预检响应具有无效的 HTTP 状态码 404

错误。

               $.ajax({
                    type: 'PUT',
                    xhrFields: {
                      withCredentials: false
                    },
                    contentType: 'application/json',
                    url: rootURL,
                    dataType: "json",
                    data: editFormToJSON6(),
                    success: function(data){

                    },
                    error: function() {
                    }
                });

【问题讨论】:

  • ,检查你的网址,可能是错误的

标签: javascript ajax


【解决方案1】:

为您的 API 中包含的每个路由添加选项路由,凭据也应始终设置为 true。

在服务器端,确保每次发出请求时选项响应都会以 200 状态码进行响应。

【讨论】:

    猜你喜欢
    • 2016-03-27
    • 2017-04-13
    • 1970-01-01
    • 2016-09-19
    • 2016-11-14
    • 2016-08-03
    • 2016-06-30
    • 2016-08-24
    • 2017-09-26
    相关资源
    最近更新 更多