ホームページ >バックエンド開発 >C#.Net チュートリアル >Asp.net 組み込みオブジェクトの概要 Request オブジェクトの使用例
Request オブジェクトは主に、ユーザーが入力したデータ、クライアントに保存された Cookie など、クライアントからデータを取得するために使用されます。この記事では、Request オブジェクトに焦点を当て、その主な機能であるフォーム変数の読み取りと読み取りについて説明します。 Web サーバー上のシステム情報を取得するためのクエリ文字列。クライアントのブラウザ情報などを取得します。興味のある友人はそれについて学ぶことができます
前書き:
Request オブジェクトは主に、ユーザーが入力したデータ、クライアントに保存された Cookie など、クライアントからデータを取得するために使用されます。
1. Request オブジェクトの概要
1. 主な属性
ApplicationPath | サーバー上の asp.net ブラウザの仮想アプリケーション ルート パスを取得します。 |
ContentEncoding | |
を取得または設定します。この属性の値は文字セットです。 クライアントを表す Encoding オブジェクトです。 | ContentLength |
ContentType | |
Cookies | |
Current | |
現在のリクエストの仮想パスを取得します | FilePath |
Files | |
Form | |
HttpMethod | |
) | item |
Params | |
Path | |
PathInfo | |
PhysicalApplicationPath | |
PhysicalPath | |
QueryString | |
RequestType | |
ServerVariables | |
TotalBytes | |
Url | |
UserHostAddress | |
2. メインメソッド (1) MapPath (VirtualPath): 現在リクエストされている URL 内の仮想パス virtualPath をサーバー上の物理パスにマッピングします。パラメータ virtualPath は、現在のリクエストの仮想パスを指定します。これは、絶対パスまたは相対パスにすることができます。このメソッドの戻り値は、virtualPath で指定されたサーバーの物理パスです。 (2)名前を付けて保存 (ファイル名、ヘッダーを含む): http リクエストをディスクに保存します。パラメーター filename は物理ドライブのパスを指定し、 includeHeaders は HTTP ヘッダーをディスクに保存するかどうかを指定するブール値です。 2. Request オブジェクトの応用 1. フォーム変数を読み取る 4 つの方法(1)。Request.QueryString プロパティを使用して読み取ります。フォーム変数 (3)。Request.Params プロパティを使用してフォーム変数を読み取ります(4)。Request.Form プロパティを使用してフォーム変数を読み取ります 2.クエリ文字列変数を読み取ります Web を閲覧すると、ブラウザーのアドレス バーに「xxx.aspx?id=8018」などの URL が表示されることがよくあります。xxx.aspx は、アクセスしたい .aspx Web ページを表します。および疑問符 (?) に続く内容はクエリ文字列で、その機能は変数の名前と値をこの ASP.NET ファイルに転送して処理することです。クエリ文字列変数はいくつかの方法で生成できます。(1). HtmlForm コントロールの Method プロパティが get に設定されている場合、ユーザーが Web ページを送信すると、フォーム データがクエリ文字列変数として URL に添付され、サーバーに送信されます。 (2)。3499910bf9dac5ae3c52d5ede73834855db79b134e9f6b82c0b36e0489ee08ed タグまたは HyperLink コントロールを使用してハイパーテキスト リンクを作成する場合、クエリ文字列をターゲット URL の後に置き、疑問符「?」を使用します。 URL とクエリ文字列 (3)。Response.Redirect メソッドを呼び出すときに、URL パラメーターに変数名と値のペアがアタッチされている場合、これらの変数値は URL にアタッチされ、ターゲット時にサーバーに送信されます。ウェブページが開きます。(4). ブラウザのアドレスバーにリクエストURLを入力する際は、URLの後ろに疑問符「?」を入力してください。例: http://…/t.aspx?Id=8018 上記の状況では、クエリ文字列変数は Request.QueryString プロパティを通じて取得できます。 //在登陆页面 protected void Button1_Click(object sender, EventArgs e) { //登陆 //if (txtUserName.Text == "admin" && txtPwd.Text == "123") //{ // Session["Info"] = "随便一个值"; // Response.Redirect("Request2_test.aspx?Info=" + txtUserName.Text); //} //else //{ // Response.Redirect("Request2_test.aspx?error=登陆失败!"); //} /***********************************方法2****************************************/ //或者 if (txtUserName.Text == "admin" && txtPwd.Text == "123") { Response.Redirect("Request2_test.aspx?Info=" + txtUserName.Text + "&check=1"); } else { Response.Redirect("Request2_test.aspx?error=登陆失败!"); } }認証ページで コードは次のとおりです: protected void Page_Load(object sender, EventArgs e) { //验证页面 //if (Session["Info"] != null && Session["Info"].ToString() == "随便一个值") //{ // Response.Write("登陆成功!<br>" + Request.QueryString["Info"] + ",欢迎访问本站"); // //Response.Write("登陆成功!<br>" + Request["Info"] + ",欢迎访问本站"); // //Response.Write("登录成功!<br>"+Request.Form["username"]+",欢迎访问本站"); //} //else //{ // Response.Write("登陆失败"); //} /***************************************方法2**********************************/ if (Convert.ToInt32(Request["check"]) == 1) { Response.Write("登陆成功!<br>" + Request.QueryString["Info"] + ",欢迎访问本站"); } else { Response.Write("登陆失败"); } }
ServerVariables コレクション オブジェクトに保存される共通情報変数は次のとおりです: 代码如下: Response.Write(Request.ServerVariables["LOCAL_ADDR"]);//远端服务器的地址 Response.Write("<br>"); Response.Write(Request.ServerVariables["Remote_ADDR"]);//浏览器所在主机的IP地址 Response.Write("<br>"); Response.Write(Request.Browser.Type.ToString());//浏览器的类型 Response.Write("<br>"); Response.Write(Request.Browser.Platform.ToString());//浏览器所在的平台 Response.Write("<br>"); Response.Write(Request.ServerVariables["url"]); 4.取得客户端浏览器信息 通过Request对象的Browser属性得到。需要利用Browser属性生成一个HttpBrowserCapabilities类型的对象实例。HttpBrowserCapabilities类具有的常用属性如下: 代码如下: Response.Write("浏览器的类型是:" + Request.Browser.Browser.ToString()+"<br>"); Response.Write("浏览器的版本是:" + Request.Browser.Version.ToString()+"<br>"); Response.Write("浏览器的所在平台是:" + Request.Browser.Platform.ToString()+"<br>"); Response.Write("浏览器是否支持框架:" + Request.Browser.Frames.ToString()+"<br>"); Response.Write("浏览器是否支持Cookies:" + Request.Browser.Cookies.ToString()+"<br>"); Response.Write("浏览器是否支持Javascript:" + Request.Browser.JavaScript.ToString()+"<br>"); 5.读取客户端Cookie Cookies集合是由一些Cookie对象组成的。Cookie对象的类名为HttpCookie。HttpCookie类的主要属性如下: 使用Cookie时,应注意以下几点 如下操作: 示例如下: 代码如下: protected void Page_Load(object sender, EventArgs e) { HttpCookie c1=Request.Cookies["UserName"]; HttpCookie c2 = Request.Cookies["Password"]; if (c1 != null || c2 != null) { //当保存完Cookie之后(也就是说"保存或永久保存"),这个才能输出,当第二次用统一浏览器打开该网站的时候就会输出 Response.Write(c1.Value + "欢迎光临"); } } protected void Button1_Click(object sender, EventArgs e) { //提交 if (TextBox1.Text == "admin" && TextBox2.Text == "123") { Response.Write("欢迎光临"+TextBox1.Text); Response.Cookies["UserName"].Value = TextBox1.Text; Response.Cookies["Password"].Value = TextBox2.Text; if (Dro pDo wn List 1.SelectedItem.Text == "永久保存") { //默认cookies失效时间是直到关闭浏览器 //Cookie保存永久 Response.Cookies["UserName"].Expires = DateTime.MaxValue; Response.Cookies["Password"].Expires = DateTime.MaxValue; } else { //Cookie永不保存 Response.Cookies["UserName"].Expires = DateTime.Now; Response.Cookies["Password"].Expires = DateTime.Now; } } } 当我们再次打开该网站(同一浏览器)的时候,就会弹出“admin欢迎光临" 【相关推荐】 |
以上がAsp.net 組み込みオブジェクトの概要 Request オブジェクトの使用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。