0

我正在开发一个 Web API 2 项目,并使用如下 EnableCors 属性:

控制器:

[EnableCors(origins: "http://localhost:32454, http://localhost:25234", headers: "*", methods: "POST")]

WebApiConfig:

config.EnableCors();

网络配置:

  <system.webServer>
    <handlers>
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <remove name="OPTIONSVerbHandler" />
      <remove name="TRACEVerbHandler" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
  </system.webServer>

当我通过 DHC Chrome 扩展将数据发布到我的 Web API 时,我的控制器工作正常。但是,我设置了两个原点。我不想通过 DHC 访问我的 Web API。因为,我不允许。

我该怎么办?

4

1 回答 1

0

我通常将 Owin 与 Web Api 一起使用,这应该可以解决:

public partial class Startup
{
    public void Configuration(IAppBuilder app)
    {
        var config = new HttpConfiguration();

        WebApiConfig.Register(config);
        ConfigureOAuth(app);
        app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
        app.UseWebApi(config);
    }
}
于 2015-12-12T11:00:05.603 回答