Ajax 使用 Chrome 新版本 73.0.3683.75 调用错误?

Ajax call bug with Chrome new version 73.0.3683.75?

我的代码在 Chrome 更新之前工作正常。

我向我的服务器发出 ajax 调用。我的服务器收到对客户端的调用,returns JSON,但应答始终为空。当我查看 Fiddler 时,我从服务器得到了答案。

我尝试使用 JQuery,我也尝试使用 xmlhttp 调用。总是相同的结果

是否应用了新的 CORS 策略规则...?

有我的 xmlHTTP 调用

 var xmlhttp = new XMLHttpRequest();   // new HttpRequest instance 
      var theUrl = "URL";
      xmlhttp.open("POST", theUrl);
      xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
      xmlhttp.send('{ "args" :{ "Obj":"my obj"}}');
      xmlhttp.onreadystatechange = function(state,xhh,aaa){
        if (xmlhttp.readyState == XMLHttpRequest.DONE) {
          alert(xmlhttp.responseText);
        }
      }

ajax调用类似

$.ajax({
        url: "URL",
        data: '{ "args" :{ "Obj":"my obj"}}',
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        type: "POST",
        async: false,       
        error: function (xhr, ajaxOptions, thrownError) {
          if (that.Fail != null) {
            that.Fail();
          }
        },
        success : function(data){

           alert(data);

        }
      })

升级到Chrome73后我遇到了同样的问题。感谢@wOxxOm

这是目前为止的解决方法:

  1. 转到 chrome://flags
  2. 禁用启用网络服务


更新:

根据此公告,这不是错误:https://www.chromium.org/Home/chromium-security/extension-content-script-fetches

您需要将跨源提取放入后台脚本而不是内容脚本。