Кажется, это очень популярный вопрос, однако я не смог найти решение, которое работает
Короче говоря, только в Chrome я получаю следующую ошибку при выполнении запроса на установку, исправление, удаление или опцию
from origin 'http://localhost:3000' заблокировано политикой CORS: исправление метода не разрешено Access-Control-Allow-Methods в ответе перед полетом.
Звонок отлично работает в IE и Firefox. Проходя через почтальона и чванства тоже успешно работает
В моем API у меня есть
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddCors();
return configureMvcServices.ExecuteConfig();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseCors(options => options.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod());
var configureApp = new ConfigureApp(app, env);
configureApp.DoConfig();
}
Пока я тоже пробовал
- Ручная настройка заголовков
- Создание политики в сервисной функции и использование атрибута allowcors на контроллере, использующем указанное имя политики
- Создание пользовательского промежуточного программного обеспечения для другого ответа, который я не могу найти, который устанавливает заголовки и параметры
Я также попытался вручную установить заголовки, чтобы они принимали все безрезультатно. Был ответ, который я не могу найти снова для создания промежуточного программного обеспечения, но это не изменило результат. У меня также
И я заблудился, как решить эту проблему
Вот код на стороне клиента, делающий вызов
return fetch(url + path, {
method,
headers:{
'Accept': 'application/json',
'crossDomain':'true',
'Content-Type': 'application/json',
'Pragma': 'no-cache',
'Access-Control-Allow-Methods': '*'
},
body: JSON.stringify(data)
})
Я не знаю, какие заголовки я мог установить на стороне клиента, попытался изменить на обычный / текстовый, но это не сработало, если таковые могли разрешить это, и я исчерпал свой гугл-фу.
дополнительно получает и сообщения работают нормально
Любая помощь будет принята с благодарностью.