• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:セッションIDの取得の必要性)

セッションIDの取得の必要性について

このQ&Aのポイント
  • Webアプリケーション制作において、セッションIDの取得は必要なのか疑問に思いませんか?
  • セッションIDの役割や必要性について詳しく解説します。
  • セッションIDを取得する必要はない場合もあるので、目的に応じて判断しましょう。

質問者が選んだベストアンサー

  • ベストアンサー
noname#94983
noname#94983
回答No.1

セッションIDとは、文字通りセッションごとに割り当てられるIDのこと。 クライアント(要するにブラウザ)からサーバーにアクセスしたとき、ユーザーを特定して処理を行う場合にセッションが用いられる。たとえばショッピングのサイトなどを考えた場合、あるユーザーが買い物をしたとき、サーバーでは、「それがどのユーザーか」ということがわからないといけない。サーバーでは、同時に多数のクライアントがアクセスしてくるわけで、それを「これは○○さん」「これは××さん」と識別する必要がある。 そこで、アクセスしてきたユーザーごとにIDを割り当て、次にアクセスしたときにこのIDを一緒に送信するようにしておく。するとサーバーでは、受け取ったIDをチェックし、「このIDはこの人だ」と識別することができる。これがセッションの考え方で、セッションIDそのものは、セッションという機能を実現するためにシステムがほぼ自動的に割り付ける。たとえばJavaの場合、セッションを利用するとサーブレット内で自動的にセッションIDを発行したり、送られてきたセッションIDをチェックしてセッションを識別するような処理を内部で行っている。だから、プログラマ自身が直接セッションIDを操作するわけではなく、「セッションという機能を実現するために、内部的にセッションIDが使われている」と考えたほうがいい。 ただし、もちろん自分自身でセッションに応じた処理などを実装する場合には、独自にセッションIDを取得し処理するようなこともある。まったくないわけではないが、普通にセッションを使うだけなら使うことはない、ということ。

Guno-this
質問者

お礼

どうもありがとうございます。 セッションIDについて把握できてきました。 すみません、 「このIDはこの人だ」とういところをもう少し突っ込んでお伺いしたいのですが、 例えばそれは、こういう内容になるのでしょうか? 「IEというブラウザからアクセスしてきている、IPアドレス○○○番の人はこの人だ」(ID認識する) 「IEというブラウザからアクセスしてきている」という情報では、ユーザーを一意に特定できないと思い、一意に特定する情報としてほかに「IPアドレスが必要なのではないだろうか」と思ったのですが。 一度、ID認識したサーバーは、 以降「ID認識した状態(IEというブラウザからアクセスしてきている、IPアドレス○○○番の人はこの人だ)」という情報が、 セッションタイムアウトなどによって、情報の消去が行われない限りの間は、“値を保持した状態が続いている” ということなのかなと、考えたのですが 間違っていませんでしょうか?

関連するQ&A

専門家に質問してみよう