.net asp 实现json 格式跨域访问 的方法

.net asp 实现json 格式跨域访问  的方法

在<configuration> 配置目录下添加允许跨域的头部信息

//webapi 默认的web.config有配置
//1)删除 下面参数  否者WEB API 会 出现405 错误   没有此配置可直接第二步 ↓
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>


//2)添加配置//
 <system.webServer>

    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Methods" value="OPTIONS,POST,GET"/>
        <add name="Access-Control-Allow-Headers" value="X-PINGOTHER, Content-Type,X-Requested-With"/>
        <add name="Access-Control-Allow-Origin" value="*" />

//需要回传cooki 
<add name="Access-Control-Allow-Credentials" value="true"/>
<add name="withCredentials" value="true"/>
      </customHeaders>
    </httpProtocol>







  </system.webServer>

[System.Web.Services.WebMethod]//声明调用的方法

public static bool Test(string word)

{

return ture;

}

//回传格式 joson '{d:"返回数据"}'

jq post 数据方法



                var params = '{name:"' + 'a' + '"}'; // name 参数名 调用的函数对应的名字 ,与静态函数的传参名相同
                $.ajax({
                    url: "http://localhost:57437/del.aspx/Test",  //调用后台方法  Test
                    data: params,
                    type: "post",
                    dataType: 'text',
                    contentType: "application/json; charset=utf-8",  //设置类型,注意一定不能丢  
                    success: function (data) {
                        console.log(data);
                    }
                });