Я использую Visual Studio для публикации приложения ASP.NET Core 2.1 в AWS Lambda (без сервера). Что бы я ни пробовал, я не могу заставить CORS работать.
Все, что я действительно хочу сделать, это добавить заголовок access-control-allow-origin
глобально в мое веб-приложение.
Кто-нибудь когда-нибудь успешно добавлял заголовки в бессерверное приложение ASP.NET Core 2.1?
Startup.cs
public void ConfigureServices(IServiceCollection services)
{
// AddCors must be before AddMvc
services.AddCors();
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_1)
);
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
// UseCors must be before UseMvc
app.UseCors(builder => builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials()
);
// Also tried this
// app.UseCors(
// o => o.WithOrigins("http://example.com").AllowAnyMethod()
//);
app.UseMvc();
}
На мои страницы не добавляются заголовки CORS. Я использую инструменты разработчика Chrome для проверки своих заголовков. Я должен видеть их на главной странице (например), верно?
Любые идеи? Я умираю здесь. Спасибо!
ИЗМЕНИТЬ
Это приложение использует только API Gateway, Lambda и несколько других сервисов. Это здорово, потому что я беру деньги только тогда, когда кто-то нажимает на мое приложение. Почасовой оплаты нет. Нет EC2 или ELB, что удивительно.
Кроме того, я почти добавил это в свой исходный пост. В статье @sturcotte06 есть подсказка .
Шлюз API (создается автоматически) использует метод ANY в интеграции прокси. В статье выше об этом говорится...
Важно
При применении приведенных выше инструкций к методу ANY в интеграции с прокси любые применимые заголовки CORS не будут установлены. Вместо этого ваш сервер должен возвращать применимые заголовки CORS, такие как Access-Control-Allow-Origin.
Фу! Итак, он говорит, что я должен сделать это на бэкэнде (правда, Startup.cs?), что, похоже, игнорируется при публикации.
IHostingEnvironment
появляется в вашем приложении... - person sturcotte06   schedule 21.11.2019AllowCredentials()
? Кроме того, добавили ли выCompatibilityVersion
во время вызоваAddMvc
? - person user1672994   schedule 21.11.2019