asp.net Webforms [WebMethod]端点上的CORS端点

O. *_*nes 14 .net c# webforms cors

我正在尝试将一些带[WebMethod]注释的端点函数添加到Webforms样式的Web应用程序(.aspx和.asmx).

我想用这些端点注释[EnableCors],从而获得所有良好的ajax-preflight功能.

VS2013接受注释,但端点仍然不适合CORS.(当使用同源而非交叉原点时,它们工作正常).

我甚至不能让它们与下行和脏的交叉起源

HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Origin", "*");
Run Code Online (Sandbox Code Playgroud)

方法 - 我的浏览器拒绝响应,并且不显示跨源响应标头.

如何在这些[WebMethod]端点中获取CORS功能?

Mik*_*Dub 11

我建议仔细检查您是否已执行此页面上的所有步骤:ASP.NET上的CORS

此外:

Response.AppendHeader("Access-Control-Allow-Origin", "*");
Run Code Online (Sandbox Code Playgroud)

还试试:

Response.AppendHeader("Access-Control-Allow-Methods","*");
Run Code Online (Sandbox Code Playgroud)

尝试直接在web配置中添加:

<system.webServer>
   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Methods" value="*" />
       <add name="Access-Control-Allow-Headers" value="Content-Type" />
     </customHeaders>
   </httpProtocol>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

如果做不到这一点,您需要确保您可以控制两个域.

  • 你是已知世界上最伟大的程序员!诗歌将会被书写,地位将会以你的圣名建立! (2认同)