[解決済み] 複数ドメインでのアクセス制御・許可・ログイン
2022-09-15 09:43:37
質問
web.config で、複数のドメインを
access-control-allow-origin
ディレクティブに複数のドメインを指定したいと思います。私は
*
. 私はこの構文を試しました。
<add name="Access-Control-Allow-Origin" value="http://localhost:1506, http://localhost:1502" />
これ
<add name="Access-Control-Allow-Origin" value="http://localhost:1506 http://localhost:1502" />
これ
<add name="Access-Control-Allow-Origin" value="http://localhost:1506; http://localhost:1502" />
そしてこれは
<add name="Access-Control-Allow-Origin" value="http://localhost:1506" />
<add name="Access-Control-Allow-Origin" value="http://localhost:1502" />
のように記述しますが、どれもうまくいきません。 正しい構文は何ですか?
どのように解決するのですか?
1つしかない
Access-Control-Allow-Origin
レスポンスヘッダはひとつだけで、そのヘッダはひとつの origin 値しか持つことができません。したがって、これを動作させるためには、以下のようなコードが必要です。
-
を取得する。
Origin
リクエストヘッダを取得します。 - originの値がホワイトリストの値の1つであるかどうかを確認します。
-
有効であれば
Access-Control-Allow-Origin
ヘッダをその値で設定します。
web.configのみで行う方法はないと思います。
if (ValidateRequest()) {
Response.Headers.Remove("Access-Control-Allow-Origin");
Response.AddHeader("Access-Control-Allow-Origin", Request.UrlReferrer.GetLeftPart(UriPartial.Authority));
Response.Headers.Remove("Access-Control-Allow-Credentials");
Response.AddHeader("Access-Control-Allow-Credentials", "true");
Response.Headers.Remove("Access-Control-Allow-Methods");
Response.AddHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
}
関連
-
[解決済み] コンフィグエラーです。このコンフィギュレーションセクションは、このパスでは使用できません
-
[解決済み] Access-Control-Allow-Originヘッダーはどのように機能するのですか?
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] クライアントから危険な可能性のあるRequest.Formの値が検出された
-
[解決済み] Access-Control-Allow-Origin複数オリジンのドメイン?
-
[解決済み] REST APIからデータを取得しようとしたときに、要求されたリソースに'Access-Control-Allow-Origin'ヘッダーが存在しない。
-
[解決済み] プリフライト要求に対する応答がアクセス制御チェックを通過しない
-
[解決済み] CORSです。資格情報フラグが true の場合、Access-Control-Allow-Origin でワイルドカードを使用できない。
-
[解決済み】「アクセス制御-許可-オリジン」がない - Node / Apacheのポートの問題
-
[解決済み] Firebaseストレージとアクセス制御・許可・オリジン
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
net core downlink tracking skywalking インストールと使いやすいチュートリアル
-
ネットのメモリ管理に関する5つの基本
-
名前 'xxx' が現在のコンテキストに存在しない エラー解決方法の1つ
-
[解決済み] Access-Control-Allow-Origin複数オリジンのドメイン?
-
[解決済み] ASP.NET WebサイトとASP.NET Webアプリケーションのどちらを選ぶか?
-
[解決済み] データ入力後に文字列をトリミングする最適な方法。モデルバインダーをカスタムで作成した方が良いですか?
-
[解決済み] .Netが間違った参照アセンブリのバージョンを選択する
-
[解決済み] Razor _layout.cshtml のファイル名の先頭にアンダースコアがあるのはなぜですか?
-
[解決済み] ASP.NET Web APIでのユーザー認証
-
[解決済み] FormsAuthentication.SignOut()がユーザーをログアウトしない