【发布时间】:2014-11-30 06:34:17
【问题描述】:
我一直在使用 ASP.NET WebAPI 和 AngularJS 来测试一些小型内部公司 Web 应用程序。我真的很喜欢它的流动。我有一个默认的 HomeController 和一个 Index 方法,看起来类似于:
public HttpResponseMessage Get()
{
var response = new HttpResponseMessage();
response.Content = new StringContent(/* index.html */);
response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/html");
return response;
}
我返回我的第一个index.html 页面,该页面位于我的应用程序中。我的问题是,要让它工作,我必须在 Startup.cs 的 OWIN 中间件中启用 CORS。我真的很想有一种方法让 WebAPI 返回我的索引页面而不必启用 CORS,并允许来自 angular 的所有后续 http 请求在不启用跨域的情况下工作。这是可行的,还是违背了 WebAPI 的整个概念?
感谢您的指导。
【问题讨论】:
-
来自浏览器的 GET 请求不需要 CORS...您确定您实际上是通过普通 GET 呈现页面而不是使用某些 AJAX 查询它而不是执行某种
innerHTML?
标签: c# angularjs asp.net-web-api cors owin