5月31日(火)1、2コマ目
今日、やったこと セッションオブジェクト 今日のホワイトボード セッションオブジェクトとは WebアプリケーションはHTTPプロトコルで動く。HTTPはリクエスト、レスポンスの1往復で完結するプロトコルで、複数回に渡るリクエスト、レスポンスのデータを保持する仕組みはない。 図 HTTPはステートレスなプロトコル このままではWebアプリケーションを構築できないので、複数回にわたるリクエスト、レスポンスでデータを共有できるセッションオブジェクトが用意されている。 Razorページでセッションオブジェクトを使うには 以下が必要。 Startup.csで設定 HttpContext.SessionのSetXX()メソッドでデータを保存 HttpContext.SessionのGetXX()メソッドでデータを取り出す Startup.cs 以下のソースを参考に。 Index.cshtml.cs SetXX()メソッドでデータを保存=>36行目 GetXX()メソッドでデータを取り出す=>20行目 Index.cshtml これは特にいうことはなし。 セッションオブジェクトはクライアント毎に用意される セッションオブジェクトはサーバー側でクライアント毎に用意される。 各クライアント毎のセッションオブジェクトにはユニークなセッションIDが付与される。 クライアント側にもこのセッションIDが保存され、リクエスト時に送信することで、サーバーはクライアントのセッションオブジェクトを識別している。 図 セッションオブジェクトはクライアント毎に用意される セッションオブジェクトのキーとデータ セッションオブジェクトにデータを保存する際、キーも一緒に指定することで、データとキーが紐づいた状態でセッションオブジェクトに保存される。 セッションオブジェクトからデータを取り出す際は、キーで指定する。 図 キーとデータ 練習問題(Razor_練習7) ソースコードを載せておきます。 Startup.cs さきほ...