gpt4 book ai didi

c# - 在 ASP.NET Web 窗体中对特定 URL 启用 CORS

转载 作者:太空宇宙 更新时间:2023-11-03 20:59:34 24 4
gpt4 key购买 nike

我不是后端开发人员,所以如果我没有提供足够的信息,我会提前道歉。我只是想找到一些资源来帮助我的后端开发人员了解我正在尝试做什么。

我正在尝试向使用 ASP.NET Web 窗体构建的 Web 应用程序内部的 rss 提要发出 AJAX GET 请求。但是,由于跨源安全性,请求被阻止。我想为与我们的 RSS 提要 (/page/rss/{id}) 关联的路由启用 CORS。

我能够使用以下方法在我们的 webconfig 中启用 CORS:

<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" values="*" />
<add name="Access-Control-Allow-Methods" values="GET" />
<add name="Access-Control-Allow-Headers" values="Content-Type" />
</customHeaders>
</httpProtocol>

但是,这为整个项目启用了它,这不是我想要的。我们的路由在 XML 文件中定义如下:

<namespace.routing>
<routings>
<route name="publishedPage" url="page/{PageName}" page="~/Default.aspx" />
</routings>
<defaults>
<default url="http://blog.example.com" domain="example.com" page="page/homepage" />
</defaults>
</namespace.routing>

那么,如何在 ASP.NET Web 窗体中的特定路径上启用 CORS?如果有人能给我指出一些对我们有帮助的资源的方向,那就太好了。如果您需要更多信息,我很乐意提供。谢谢!

最佳答案

我不确定您是如何返回 rss 端点的,但是如果您有权访问 HttpContext 对象,则可以使用它直接提供 CORS header 。

HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Origin", "*");
HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Methods", "Get");
HttpContext.Current.Response.AppendHeader("Access-Control-Allow-Headers", "Content-Type");

根据您的应用的年龄,您可能需要使用 AddHeader 而不是 AppendHeader

关于c# - 在 ASP.NET Web 窗体中对特定 URL 启用 CORS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46856572/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com