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

问题描述 投票:8回答:1

在Chrome更新之前,我的代码运行正常。

我对我的服务器进行了ajax调用。我的服务器接收到呼叫,将JSON返回给客户端,但答案始终为空。当我看到Fiddler时,我从服务器得到答案。

enter image description here

我尝试使用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);

        }
      })
ajax google-chrome google-chrome-extension cors cross-origin-read-blocking
1个回答
8
投票

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

这是迄今为止的解决方法:

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

Step by step


更新:

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

您需要将Cross-Origin Fetches放入后台脚本而不是内容脚本。

© www.soinside.com 2019 - 2024. All rights reserved.