0

我对 ASP.NET 网站编程很陌生。我有一个 node js express 应用程序,我需要向它发出请求。这目前在我的 asp.net 站点上不起作用,因为我没有启用 cors。我希望你能帮助我,如果我只是愚蠢并且配置我的网站错误或忘记添加控制器,请告诉我。

我尝试通过 nuget 添加 cors 包并将其添加到 web.config 中。

4

1 回答 1

0

在解决方案资源管理器中,展开 WebApi 项目。打开文件 App_Start/WebApiConfig.cs,并将以下代码添加到方法 WebApiConfig.Register。

public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // New code
            config.EnableCors();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
        }
    }

然后将属性 [EnableCors] 添加到所需的控制器:

namespace MyProject.Controllers
{
    [EnableCors(origins: "http://myclient.azurewebsites.net", headers: "*", methods: "*")]
    public class TestController : ApiController
    {
        // Controller methods not shown...
    }
}
于 2019-09-18T11:42:27.377 回答