【ASP.NET・C#】ページ遷移について -リダイレクト-
【今回の紹介】
ASP.NET開発において、ページ遷移を実現する方法、とりわけリダイレクトについて。
【内容】
ASP.NET開発において、ページ遷移を実現する方法はいくつかあるようだ。
基本的にASP,NETはなるべく同じページ内で処理を完結させるという思想があるため、
ページ遷移が多いWebアプリになると面倒かもしれない。
手法はいろいろあるで、、
参考:
vbhadesukedonanika.azurewebsites.net
■リダイレクトってどんな仕組み
今回は、pjで多用されているリダイレクトに的を絞る
ウェブサイトにおけるリダイレクト(英:redirect)とは、ウェブサイトの閲覧において、
指定したウェブページから自動的に他のウェブページに転送されること。
URLリダイレクト(URL redirection)とも言われる。
具体的には、ASP,NETのサーバ側のボタン処理などを拾って画面遷移したい場合などに多用すると思う。
■標準的な流れ
標準的な流れとしては以下の流れだと思う。
①クライアントがサーバにページをGETメソッド要求
②ページで値やらなんやらを入力し、POST
③サーバ側でその入力値で分岐させ、遷移先のページリダイレクトするようにHTTP
レスポンスのステータスコード302でクライアントに返す(ヘッダーに遷移先が書き込まれている)
④クライアントは、遷移先にGETメソッドでページをサーバへ要求する
⑤サーバは、クライアントにページ情報をレスポンスする
※リダイレクト先にパラメータを渡したい場合、クエリ文字列を使って渡すことが可能。
POSTBACK後、一度クライアントに返しているため、実質上2回リクエストしている