ASP.NET Core 2.1と2.2 SignalR CORSのドメイン間問題

835 ワード

SignalRをASPに統合する.NET Core apiプログラムの場合、公式DEMO構成で完了し、ローカルアクセスは問題ありませんが、リリース後はドメイン間の問題を報告し続け、ローカルはこのように設定されています.
  Asp.Netcore 2.1では、次のように構成できます.
    services.AddCors(op => { op.AddPolicy("cors", set => { set.AllowAnyOrigin() .AllowAnyHeader() .AllowAnyMethod() .AllowCredentials(); }); });
でもAsp.Netcore 2.2で上記の構成でエラーが発生しました.
 
この問題の原因は、CORSポリシーの設定が正しくないためで、元の設定はすべてのOriginソースを許可しています.しかしdotnetCore 2.2の制約により、AllowAnyOrigin()+AllowCredentials()の組み合わせを使用することができず、Originソースを明示的に指定するか、以下のように間接的に実現するしかない.
  Asp.Netcore 2.2では、次のように構成します.
  services.AddCors(op => { op.AddPolicy("cors", set => { set.SetIsOriginAllowed(origin => true) .AllowAnyHeader() .AllowAnyMethod() .AllowCredentials(); }); });
転載先:https://www.cnblogs.com/ycb715/p/10791790.html