webapi跨域访问

发布时间 2023-10-14 23:15:47作者: 随风178

1、在webconfig配置文件里面加入

<system.webServer>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="authorization,Authorization,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Token" />
<add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />

</customHeaders>
</httpProtocol>
</system.webServer>

 

2、在Global文件里面加入

public void Application_BeginRequest()
{
//OPTIONS请求方法的主要作用:
//用来检查服务器的性能.如Ajax进行跨域请求是的预检,需要想另外一个域名的资源发送OPTIONS请求头,用以判断发送的请求是否安全
if (Request.Headers.AllKeys.Contains("Origin") && Request.HttpMethod == "OPTIONS")
{
//表示对输出的内容进行缓冲,执行page.Response.Flush()时,会等所有内容缓冲完毕,将内容发送到客户端
Response.Flush();
}
}