Aspnetboilerplate从angular 6客户端调用mvc 5.x项目

时间:2019-03-05 18:52:24

标签: cors aspnetboilerplate

在后端api上,我想利用aspnetboilerplate mvc 5.x版本。我的客户端是有角度的6,我无法超越http 405错误。我确实只是使用Content-Type =“ application / json”向http://localhost:6634/api/Account/Authenticate发送POST请求。

这是我在网上找到的webapi初始化方法中的配置。

 Configuration.Modules.AbpWebApi().DynamicApiControllerBuilder
            .ForAll<IApplicationService>(typeof(MyCompanyApplicationModule).Assembly, "app")
            .WithConventionalVerbs()
            .WithFilters(new AllowCrossSiteJsonAttribute())
            .Build();

这是主要的操作过滤器。

public class AllowCrossSiteJsonAttribute : ActionFilterAttribute
{
    public override void OnActionExecuted(HttpActionExecutedContext filterContext)
    {
        if (filterContext.Response != null)
            if (filterContext.Response.Headers != null)
            {
                filterContext.Response.Headers.Add("Access-Control-Allow-Origin", "*" );
                filterContext.Response.Headers.Add("Access-Control-Allow-Headers", "X-AspNet-Version,X-Powered-By,Date,Server,Accept,Accept-Encoding,Accept-Language,Cache-Control,Connection,Content-Length,Content-Type,Host,Origin,Pragma,Referer,User-Agent");
                filterContext.Response.Headers.Add("Access-Control-Allow-Methods", "GET, PUT, POST, DELETE, OPTIONS");
                base.OnActionExecuted(filterContext);
            }
    }
}

任何帮助将不胜感激。

0 个答案:

没有答案