Вызов токена Owin из angular 4 В запрашиваемом ресурсе отсутствует заголовок "Access-Control-Allow-Origin"
Я использую owin для генерации токена oAuth в asp.net webapi, и я добавил UserCors в качестве первой строки в конфигурации в Statrup.cs
public void Configuration(IAppBuilder app)
{
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
ConfigureOAuth(app);
}
Я также добавил это снова в ConfigureOAuth(приложение);
Я вручную попытался добавить заголовок внутри GrantResourceOwnerCredentials, как показано ниже
context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" });
Но не работает. Я продолжаю получать сообщение об ошибке Нет заголовка "Access-Control-Allow-Origin" на запрошенном ресурсе с угловой стороны.
Когда я добавляю заголовки в файл конфигурации, он говорит, что дубликат.
<customHeaders>
<add name="Access-Control-Allow-Origin" value="http://localhost:4200" />
<add name="Access-Control-Allow-Methods" value="GET, POST, OPTIONS, PUT,DELETE" />
</customHeaders>
Не уверен, что происходит.
1 ответ
Решение
Хитрость заключается в том, чтобы удалить Global.asax и вызвать WebApiConfig.Register из файла запуска. Эта ссылка помогла мне.