我按照aspnet网站教程启用了角色,但我无法让它发挥作用。
WebApiConfig上的注册方法:
public static void Register(HttpConfiguration config)
{
config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
config.MapHttpAttributeRoutes();
}
控制器:
public class TestController : Controller
{
[Route("test/{*anything}")]
public ActionResult Index()
{
return Json(new { test = "test message" },
JsonRequestBehavior.AllowGet);
}
}
然后我创建一个简单的网站,其中最小的index.html由nodejs live-server提供ajax请求,当本地调试时它可以正常工作。但是当我将它发布到azure时,我得到以下错误:
XMLHttpRequest无法加载http://mysite.azurewebsites.net。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许来源“http://localhost:8080”访问
修改
我已安装Microsoft.AspNet.WebApi.Cors
版本5.2.3
答案 0 :(得分:3)
好像你正在使用MVC控制器而不是Api控制器(除非它的DotNet核心)。使用操作返回类型ApiController
和IHttpResponseMessage
return Ok (new { test = "test message" });