Skip to content

Commit

Permalink
2023/07/25 時点の英語版に同期
Browse files Browse the repository at this point in the history
  • Loading branch information
mfuji09 committed Oct 5, 2023
1 parent 39663f3 commit d99138c
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions files/ja/web/http/cors/errors/index.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,28 @@
---
title: CORS のエラー
slug: Web/HTTP/CORS/Errors
l10n:
sourceCommit: 592f6ec42e54981b6573b58ec0343c9aa8cbbda8
---

{{HTTPSidebar}}

[オリジン間リソース共有](/ja/docs/Web/HTTP/CORS) (Cross-Origin Resource Sharing) ({{Glossary("CORS")}}) は、サーバーが[同一オリジンポリシー](/ja/docs/Web/Security/Same-origin_policy)を緩和することができる標準です。例えば、サイトが埋め込み可能なサービスを提供する場合、このような制約を緩和する必要があるかもしれません。このような CORS の構成の設定は必ずしも簡単ではなく、いくらか冒険的です。これらのページでは、よくある CORS のエラーメッセージと解決方法を調査します。
[オリジン間リソース共有](/ja/docs/Web/HTTP/CORS) (Cross-Origin Resource Sharing) ({{Glossary("CORS")}}) は、サーバーが[同一オリジンポリシー](/ja/docs/Web/Security/Same-origin_policy)を緩和することができる標準規格です。例えば、サイトが埋め込み可能なサービスを提供する場合、このような制約を緩和する必要があるかもしれません。このような CORS の構成の設定は必ずしも簡単ではなく、いくらか冒険的です。これらのページでは、よくある CORS のエラーメッセージと解決方法を調査します。

CORS 構成が正しく設定されていないと、ブラウザーコンソールには `"Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at $somesite"` のようなエラーを表示して、リクエストが CORS のセキュリティ規則を侵害しているためにブロックされたことを示します。これは必ずしも設定ミスとは限りません。実際には、ユーザーのウェブアプリケーションおよびリモートの外部サービスからのリクエストが、意図的に許可されていない場合もあります。しかし、ただし、エンドポイントが使用可能である場合、成功するためにはデバッグが必要です。
CORS 構成が正しく設定されていないと、ブラウザーのコンソールには `"Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at $somesite"` のようなエラーを表示して、リクエストが CORS のセキュリティ規則を侵害しているためにブロックされたことを示します。これは必ずしも設定ミスとは限りません。実際には、ユーザーのウェブアプリケーションおよびリモートの外部サービスからのリクエストが、意図的に許可されていない場合もあります。ただし、エンドポイントが使用可能である場合、成功するためにはデバッグが必要です。

## 問題の識別

CORS の構成に関する問題を理解するために、どのリクエストが、なぜ失敗したのかを調べる必要があります。そのためには以下の手順が役立つかもしれません。

1. 問題のウェブサイトやウェブアプリを実行し、[開発者ツール](/ja/docs/Tools)を開く。
2. 失敗するトランザクションを再現してみて、[コンソール](/ja/docs/Tools/Web_Console)で CORS 違反エラーメッセージが表示されるかを調べる。おそらく次のように見える。
1. 問題のウェブサイトやウェブアプリを実行し、[開発者ツール](https://firefox-source-docs.mozilla.org/devtools-user/index.html)を開く。
2. 失敗するトランザクションを再現してみて、[コンソール](https://firefox-source-docs.mozilla.org/devtools-user/web_console/index.html)で CORS 違反エラーメッセージが表示されるかを調べる。おそらく次のように見える。

![CORS エラーを表示している Firefox コンソール](cors-error2.png)

エラーメッセージのテキストは以下のようなものになるでしょう。

```
```plain
Cross-Origin Request Blocked: The Same Origin Policy disallows
reading the remote resource at https://some-url-here. (Reason:
additional information here).
Expand All @@ -41,7 +43,7 @@ Firefox のコンソールは、 CORS のためにリクエストが失敗した
- [Reason: CORS header 'Access-Control-Allow-Origin' does not match 'xyz'](/ja/docs/Web/HTTP/CORS/Errors/CORSAllowOriginNotMatchingOrigin)
- [Reason: Credential is not supported if the CORS header 'Access-Control-Allow-Origin' is '\*'](/ja/docs/Web/HTTP/CORS/Errors/CORSNotSupportingCredentials)
- [Reason: Did not find method in CORS header 'Access-Control-Allow-Methods'](/ja/docs/Web/HTTP/CORS/Errors/CORSMethodNotFound)
- [Reason: expected 'true' in CORS header 'Access-Control-Allow-Credentials'](/ja/docs/Web/HTTP/CORS/Errors/CORSMissingAllowCredentials)
- [Reason: expected 'true' in CORS header 'Access-Control-Allow-Credentials'](/ja/docs/Web/HTTP/CORS/Errors/CORSMIssingAllowCredentials)
- [Reason: CORS preflight channel did not succeed](/ja/docs/Web/HTTP/CORS/Errors/CORSPreflightDidNotSucceed)
- [Reason: invalid token 'xyz' in CORS header 'Access-Control-Allow-Methods'](/ja/docs/Web/HTTP/CORS/Errors/CORSInvalidAllowMethod)
- [Reason: invalid token 'xyz' in CORS header 'Access-Control-Allow-Headers'](/ja/docs/Web/HTTP/CORS/Errors/CORSInvalidAllowHeader)
Expand All @@ -52,7 +54,7 @@ Firefox のコンソールは、 CORS のためにリクエストが失敗した

- 用語集: {{Glossary("CORS")}}
- [CORS 入門](/ja/docs/Web/HTTP/CORS)
- [サーバー側 CORS 設定](/ja/docs/Web/HTTP/Server-Side_Access_Control)
- [サーバー側 CORS 設定](/ja/docs/Web/HTTP/CORS)
- [CORS 有効化の画像](/ja/docs/Web/HTML/CORS_enabled_image)
- [CORS の設定属性](/ja/docs/Web/HTML/CORS_settings_attributes)
- [CORS の設定属性](/ja/docs/Web/HTML/Attributes/crossorigin)
- <https://www.test-cors.org> – CORS リクエストの試験ページ

0 comments on commit d99138c

Please sign in to comment.