ASP.NET POST 请求本身不支持跨域资源共享(CORS)。CORS 是一种跨域访问的机制,它允许服务器通过设置响应头来控制哪些源(域)可以访问其资源。要在 ASP.NET 中实现 CORS,你需要在服务器端进行一些配置。
以下是在 ASP.NET 中启用 CORS 的几种方法:
-
使用 Microsoft.AspNetCore.Cors 包:
在你的 ASP.NET Core 项目中,安装 Microsoft.AspNetCore.Cors 包。然后,在你的
Startup.cs
文件中的ConfigureServices
方法中添加以下代码:services.AddCors(options => { options.AddPolicy("AllowSpecificOrigin", builder => builder.WithOrigins("http://example.com") .AllowAnyMethod() .AllowAnyHeader()); });
接下来,在
Configure
方法中添加以下代码:app.UseCors("AllowSpecificOrigin");
这将允许来自
http://example.com
的请求访问你的应用程序。你可以根据需要修改这些设置。 -
使用 Web API:
如果你使用的是 Web API,可以在控制器中使用
[EnableCors]
属性来启用 CORS:[EnableCors("AllowSpecificOrigin")] public class MyController : ApiController { // ... }
这将允许来自
http://example.com
的请求访问你的 Web API。 -
使用 MVC:
对于 MVC 应用程序,你可以在
Global.asax.cs
文件中的Application_Start
方法中添加以下代码:protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var cors = new EnableCorsAttribute("AllowSpecificOrigin", "http://example.com", "*"); config.EnableCors(cors); }
这将允许来自
http://example.com
的请求访问你的 MVC 应用程序。
请注意,这些示例仅用于演示目的。在实际项目中,你可能需要根据具体需求调整 CORS 设置。