WebApi跨域

在接口调用的时候,需要考虑到接口的跨域请求。

在web.config配置中添加几条配置即可

  <system.webServer>        
    <httpProtocol>
    <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Methods" value="POST,OPTIONS" />
        <add name="Access-Control-Allow-Headers" value="content-type" />
    </customHeaders>
    </httpProtocol>
</system.webServer>

在部署到IIS上时,可以在HTTP响应标头里查看配置是否存在,如果不存在的话,可以手动添加

用js来调用:

<html>
    <head>
        <meta charset="utf-8">
        <script src="jquery-3.1.1.min.js"></script>
    </head>
    <body>
        <button>向页面发送 HTTP POST 请求,并获得返回的结果</button>
        <script>
        $.support.cors = true;
        $(document).ready(function(){
        $("button").click(function(){
            var url='接口地址';
            var sendInfo='接口请求信息';
            $.ajax({
            url:url,
            type:'POST',
            dataType:'json',
            //contentType:'application/json',     //添加这句会出错 
            data:sendInfo,
            success:function (data)
            {
                console.log(data);
            }
            });
            // $.post(url,JSON.stringify(sendInfo), 
            //   function (data){
            //     console.log(JSON.stringify(data))
            //   },"json"
            // );
            })
                
        });
        </script>
    </body>
</html>

调试发现可以跨区请求

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容