zoukankan      html  css  js  c++  java
  • WebAPI post 跨域调用及坑

    nuget中安装Microsoft ASP.NET Web API Cors相关的两个包
    EnableCors可以在方法 类上用EnableCorsAttibute设置
    也可以在WebApiConfig的Register方法中,直接config.EnableCors()

    IIS的设置,在web.config中
    <system.webServer>中

    <httpProtocol>
    <customHeaders>
    <add name="Access-Control-Allow-Origin" value="*"/>
    <add name="Access-Control-Allow-Headers" value="*" />
    <add name="Access-Control-Allow-Methods" value="GET,POST,OPTIONS"/>
    </customHeaders>
    </httpProtocol>

    WebAPI方法第一个参数使用[FromBody],post多个值,需要定义成一个对象,当成一个[FromBody]参数

    1.

    $(document).ready(function () {
    var ecParams = {
    "pID": 0,
    "eItemIDs": ["01", "42"],
    "startTime": "2016/01/10",
    "endTime": "2016/01/11"
    };
    var prm = JSON.stringify(ecParams);
    $.ajax(
    {
    //url: "http://xxx.xxx.xxx.xxx/xxxAPI/api/EItemDatas/getEItemData",
    url: "../api/EItemDatas/getEItemData",
    type: "post",
    dataType: "json",
    contentType: "application/json", 
    data: prm
    success: function (data) {
    alert(data);
    },
    error: function (XHR, text, err) {
    alert(text);
    }
    }
    );
    });

    2.

    $(document).ready(function () {
    var ecParams = {
    "pID": 0,
    "eItemIDs": ["01", "42"],
    "startTime": "2016/01/10",
    "endTime": "2016/01/11"
    };
    //var prm = JSON.stringify(ecParams);
    $.ajax(
    {
    url: "http://xxx.xxx.xxx.xxx/xxxAPI/api/EItemDatas/getEItemData",
    //url: "../api/EItemDatas/getEItemData",
    type: "post",
    dataType: "json",
    //contentType: "application/json", 
    data: ecParams,
    success: function (data) {
    alert(data);
    },
    error: function (XHR, text, err) {
    alert(text);
    }
    }
    );
    });


    如上两段代码,第1段可以正常使用
    第2段也可以正常使用,但是如果在第1段中调用跨域的接口会出现error,原因暂未知
    ecParams的各个key跟getEItemData方法的参数类属性名完全一致

  • 相关阅读:
    Java中文语言处理HanLP
    python的jieba分词词性标注(转载)
    solr 自聚类实现
    IntelliJ IDEA 创建 java Maven项目
    javat Itext实践 pdf
    java 中PriorityQueue优先级队列使用方法
    java实现 tf-idf
    Solr6.6 IK 中文分词的配置和使用
    yaha分词
    实现自动文本摘要(python,java)
  • 原文地址:https://www.cnblogs.com/fenix/p/5127984.html
Copyright © 2011-2022 走看看