ขนาดวิดีโอ: 1280 X 720853 X 480640 X 360
แสดงแผงควบคุมโปรแกรมเล่น
เล่นอัตโนมัติ
เล่นใหม่
oauthフローの詳細解説もお願いしたいです🥺
登録、ログイン、セッションもお願いします🤲JWTトークン認証、リフレッシュトークンあたりもお願いしたいです🥺
corsってリクエストを制限するのではなく、レスポンスの読み取りを制限するのではなかったでしたっけ?
ご質問ありがとうございます!その挙動は「シンプルなリクエスト」の時の挙動かと思います!(CORSを定義しているfetch standardでは「シンプルなリクエスト」という定義は使われていないのですが、MDNのドキュメントでは使われている用語のため拝借します)例えばGET、かつ特定のリクエストヘッダのみ含むなど、一定の条件を満たすリクエストはシンプルなリクエストとして扱われ、preflight requestは送られません。直接サーバにリクエストが飛んで、CORS関連のヘッダを受け取ります例えばこの時にaccess-control-allow-originヘッダにリクエスト作成元のオリジンが含まれていなければ、fetchリクエストの中で例外が発生して、レスポンスデータの読み取りが制限されます(この動作はブラウザが保証しています)なのでシンプルなリクエストの時はようつべ様が仰る通りの挙動(レスポンスは受け取っているけど、ブラウザが読み込めない)、それ以外のリクエスト(DELETEなど)の時は、図解した通りの流れになるものと理解していますこの点は動画の中でも補足しておくべきだったかもしれません...ご指摘ありがとうございます!
th-cam.com/video/1KD7bGbIc28/w-d-xo.htmlこちらで図解してみました!
High Engineer postもシンプルリクエストだから、リクエスト自体はサーバーに届いてpostされるので、csrf対策しとかないといけないってことですね!
putとかdeleteなどのシンプルリクエストではないリクエストの場合、cors制約でリクエストがサーバーに届いて実行されないから、csrf対策不要になりますか?
oauthフローの詳細解説もお願いしたいです🥺
登録、ログイン、セッションもお願いします🤲
JWTトークン認証、リフレッシュトークンあたりもお願いしたいです🥺
corsってリクエストを制限するのではなく、レスポンスの読み取りを制限するのではなかったでしたっけ?
ご質問ありがとうございます!
その挙動は「シンプルなリクエスト」の時の挙動かと思います!(CORSを定義しているfetch standardでは「シンプルなリクエスト」という定義は使われていないのですが、MDNのドキュメントでは使われている用語のため拝借します)
例えばGET、かつ特定のリクエストヘッダのみ含むなど、一定の条件を満たすリクエストはシンプルなリクエストとして扱われ、preflight requestは送られません。直接サーバにリクエストが飛んで、CORS関連のヘッダを受け取ります
例えばこの時にaccess-control-allow-originヘッダにリクエスト作成元のオリジンが含まれていなければ、fetchリクエストの中で例外が発生して、レスポンスデータの読み取りが制限されます(この動作はブラウザが保証しています)
なのでシンプルなリクエストの時はようつべ様が仰る通りの挙動(レスポンスは受け取っているけど、ブラウザが読み込めない)、それ以外のリクエスト(DELETEなど)の時は、図解した通りの流れになるものと理解しています
この点は動画の中でも補足しておくべきだったかもしれません...ご指摘ありがとうございます!
th-cam.com/video/1KD7bGbIc28/w-d-xo.html
こちらで図解してみました!
High Engineer postもシンプルリクエストだから、リクエスト自体はサーバーに届いてpostされるので、csrf対策しとかないといけないってことですね!
putとかdeleteなどのシンプルリクエストではないリクエストの場合、cors制約でリクエストがサーバーに届いて実行されないから、csrf対策不要になりますか?