Web技術の基礎

ブラウザのlocalStorageとCookieの違いとして、正しいものはどれか。

  1. AlocalStorageのデータはリクエストに自動では付かず、同じオリジンのページのJavaScriptから読み書きして使う
  2. BlocalStorageのデータも、Cookieと同じように、同じサイトへのリクエストのたびにヘッダに入れられ、自動でサーバへ送られる
  3. ClocalStorageにもHttpOnly属性を付けられるので、セッションIDを置いても、ページのスクリプトからは読み取れない
答えと解説を見る

正解:A. localStorageのデータはリクエストに自動では付かず、同じオリジンのページのJavaScriptから読み書きして使う

localStorageは、オリジンごとにキーと値の文字列を保存するブラウザの記憶場所で、有効期限を決める仕組みはなく、一般に消すまで残ります。サーバへは自動では送られないので、送りたいときはJavaScriptでリクエストに入れます。Cookieは1つあたり一般に約4 KBまでと小さく、リクエストのたびに自動で送られるのに対し、localStorageにはより大きなデータを置けます。ただし、ページのJavaScriptからはいつでも読めるので、XSSがあると中身を盗まれます。認証に使う値を置くときは、この危険を考える必要があります。

  • A. 正しい。localStorageのデータは自動では送られず、同じオリジンのスクリプトから読み書きします。
  • B. リクエストに自動で付けて送られるのはCookieです。localStorageのデータは自動では送られません。
  • C. HttpOnly はCookieの属性です。localStorageの中身は、同じオリジンのスクリプトからいつでも読めます。
この分野を解く 分野ページへ

Web技術の基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

Web技術の基礎のほかの問題

  1. ロードバランサの後ろに3台のアプリケーションサーバを置き、リクエストを順番に各サーバへ振り分けている(ラウンドロビン)。ログインした利用者のセッションの情報は、ログインを処理したサーバのメモリだけに保存している。起こりやすい問題と対策の組み合わせとして、適切なものはどれか。
  2. 署名を付けた一般的なJWT(JSON Web Token)の説明として、正しいものはどれか。
  3. 写真の印刷サービスのアプリが、利用者の許可を得て、別の会社の写真の保存サービスにある利用者の写真を読み出す。OAuth 2.0で、利用者に許可を求める画面を示し、利用者が許可するとアプリにアクセストークンを発行する役割はどれか。
  4. OAuth 2.0とOpenID Connectの関係の説明として、正しいものはどれか。
  5. RESTの考え方に沿ったWeb APIの設計として、適切なものはどれか。