ローカルで正常に動作していたangularjsアプリケーションからaspnetcore web apiが呼び出されました。私はCORSを有効にしました。クライアントにAPIを今すぐ使用させるための唯一の方法でした(これは意味をなさないようで、今は他のことについて心配する必要がありました)。今日2.0をaspnetcoreへのアップグレード後にaspnetcore 2.0にアップグレードした後にCORSが動作しない
(それは私が実際に使用できる機能のいくつかを持っているので)私は今ちょうど私がCORSを有効にする前に取得するために使用したのと同じエラーを取得:
いいえ「アクセス制御-Allow-Originのヘッダーは、要求されたリソース上に存在します。
すべてのdotnetcoreパッケージをバージョン2.0(Microsoft.AspNetCore.Corsを含む)にアップグレードしました。
それは次のように私は私の起動や設定のコードを変更していないことは注目に値するかもしれません:このすべての前に述べたように
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
app.UseCors(builder => builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
app.UseMvc();
}
public void ConfigureServices(IServiceCollection services)
{
services.Configure<Models.SmtpConfig>(Configuration.GetSection("Smtp"));
services.AddCors();
services.AddMvc();
}
がaspnetcore 1.1で正常に働いたとFYI私は制限を計画CORSを使用しているため、特定のサブドメインからのコールのみを受け付けますが、現時点ではその方法はありません。
ブラウザの開発ツールで応答を確認してください。私はしばしば、サーバーが実際に要求を処理できず、代わりに500を送信したときにこれを持っていました(この場合、CORSヘッダーは設定されません)。 – poke
これはエラーですが、私はそれが起こっていることを知っていますが、なぜ彼らは設定されていないのかわかりません! –
私のコメントをもう一度読んで、ブラウザの開発ツールの[ネットワーク]タブを確認してください。 * "No 'Access Control-Allow-Origin'ヘッダー" *は、ブラウザーが要求を実行している間にエラーが発生しましたが、ヘッダーの原因がサーバーエラーのために発生している可能性があります。 – poke