首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NetworkError:未能对‘XMLHttpRequest’执行'send‘:未能加载'Sub.domain.com’-使用javascript调用web

NetworkError:未能对‘XMLHttpRequest’执行'send‘:未能加载'Sub.domain.com’-使用javascript调用web
EN

Stack Overflow用户
提问于 2018-06-28 12:25:31
回答 1查看 2.5K关注 0票数 0

我已经使用WebAPI2和MCV5开发了web应用程序。我正在尝试使用javascript调用Web并获取NetworkError:无法对“XMLHttpRequest”执行'send‘:无法将'Sub.domain.com’加载到colsole。

代码语言:javascript
运行
复制
var param = {
    "EmailID": email,
};

var appUrl = '@ConfigHelper.ApiURL';
var url = appUrl + 'user/checkemailid';

//create xml http request for request api url
var xhr = new XMLHttpRequest();
xhr.open('POST', url, true);

$.ajax({
    type: "POST",
    url: url,
    data: JSON.stringify(param),
    contentType: "application/json",
    dataType: "json",

    success: function (json) {
        debugger;
        if (json.IsSuccessful) {
            swal("", "Email id already exist.", "warning");                  
            return false;
        }
        else {
            return true;
        }
    },
    error: function (data) {
        debugger;
        swal('', data.Message, 'error');
    }
});

并且还为项目web和api添加了交叉来源。将以下代码写入web.config

代码语言:javascript
运行
复制
 <system.webServer>

    <!-- Cross origin for Domain-->
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Methods" value="POST,GET,PUT,PATCH,DELETE,OPTIONS" />
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="Content-Type" />
      </customHeaders>
    </httpProtocol>
 </system.webServer>

并将代码放入global.aspx文件中

代码语言:javascript
运行
复制
protected void Application_BeginRequest()
        {
            if (Request.Headers.AllKeys.Contains("Origin") && Request.HttpMethod == "OPTIONS")
            {
                Response.Flush();
            }
        }

让我知道我遗漏了什么。

我正在尝试实现许多像Failed to execute 'send' on 'XMLHttpRequest' Syncronous这样的解决方案,但是没有成功

相同的代码片段适用于其他域的此项目,但不适用于主域到子域的api调用。

EN

回答 1

Stack Overflow用户

发布于 2018-07-04 19:04:45

您还可以在$.ajax()参数对象中添加以下内容-

代码语言:javascript
运行
复制
"crossDomain": true,
"headers": {
              "accept": "application/json",
              "Access-Control-Allow-Origin":"*"
          }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51074701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档