suchen
HeimBackend-EntwicklungC#.Net-TutorialZusammenfassung der Anwendungsbeispiele für das in Asp.net integrierte Objekt Request-Objekt

Das Request-Objekt wird hauptsächlich zum Abrufen von Daten vom Client verwendet, z. B. vom Benutzer eingegebene Daten, auf dem Client gespeicherte Cookies usw. Dieser Artikel konzentriert sich auf das Request-Objekt und erklärt seine Hauptfunktionen: Lesen von Formularvariablen und Abfragen von String-Variablen, um die Systeminformationen des Webservers abzurufen. Erhalten Sie Client-Browserinformationen usw. Interessierte Freunde können mehr über

Vorwort:
Das Request-Objekt wird hauptsächlich zum Abrufen von Daten vom Client verwendet, z. B. wenn der Benutzer das Formular ausfüllt . Auf dem Client gespeicherte Daten, Cookies usw.

1. Übersicht über das Anforderungsobjekt

1

2. Hauptmethode

(1) MapPath (VirtualPath): Ordnen Sie den virtuellen Pfad virtualPath in der aktuell angeforderten URL dem physischen Pfad auf dem Server zu. Der Parameter virtualPath gibt den virtuellen Pfad der aktuellen Anfrage an, der ein absoluter Pfad oder ein relativer Pfad sein kann. Der Rückgabewert dieser Methode ist der physische Pfad des durch virtualPath angegebenen Servers.

(2)SaveAs (Dateiname, includeHeaders): Speichern Sie die http-Anfrage auf der Festplatte. Der Parameter Dateiname gibt den physischen Laufwerkspfad an und includeHeaders ist ein boolescher Wert, der angibt, ob HTTP-Header auf der Festplatte gespeichert werden sollen.

2. Anwendung des Request-Objekts

4 Möglichkeiten zum Lesen von Formularvariablen :

(1) .Verwenden die Request.Form-Eigenschaft zum Lesen von Formularvariablen
(2). Verwenden Sie die Request.QueryString-Eigenschaft zum Lesen von Formularvariablen
(3). Formularvariablen direkt über die Eigenschaften des Serversteuerelements lesen


(1) Verwenden Sie die Eigenschaft „Request.Form“, um die Formularvariablen

Methodeneigenschaft des HtmlForm-Steuerelements zu lesen Der Standardwert ist post. In diesem Fall werden die Formulardaten in Form von HTTP-Headern an den Server gesendet, wenn der Benutzer die Webseite übermittelt. An dieser Stelle können Sie die Form-Eigenschaft des Request-Objekts verwenden, um die Formularvariablen zu lesen. Zum Beispiel: txtUserName- und txtPassword-Textfeldsteuerelemente. Ihre Werte können in der folgenden Form gelesen werden: Request.Form["txtUserName"] ;Request.Form["txtPassword"]

(2) Verwenden Sie Request Die .QueryString-Eigenschaft liest die Formularvariable

. Wenn die Method-Eigenschaft des HtmlForm-Steuerelements auf „get“ eingestellt ist, werden die Formulardaten beim Absenden der Webseite durch den Benutzer an die URL angehängt und an den Server gesendet . In diesem Fall kann die Formularvariable mithilfe der QueryString-Eigenschaft des Request-Objekts gelesen werden. Request.QueryString["txtUserName"] ;Request.QueryString["txtPassword"]

(3) Verwenden Sie die Request.Params-Eigenschaft, um Formularvariablen zu lesen

Unabhängig von der Method-Eigenschaft des Das HtmlForm-Steuerelement ist Value. Sie können die Params-Eigenschaft des Request-Objekts verwenden, um den Inhalt der Formularvariablen zu lesen, z. B. Request.Params["txtPassword"] oder Request.["txtPassword"]. Die von der GET-Methode übermittelten Daten sind Priorität erhalten und in QueryString, Form und ServerVariable der Reihe nach durchsucht werden.

Anfrage: Enthält die beiden oben genannten Methoden (die von der GET-Methode übermittelten Daten werden zuerst abgerufen) und sucht der Reihe nach in QueryString, Form und ServerVariable. Request.Params ist eine Sammlung aller per Post übergebenen Werte und get request.params ist eigentlich eine Sammlung, die in der Reihenfolge request.QueryString, request.Form, request.cookies und request.ServerVariable enthält.

Hinweis: Bei der Verwendung von Request.Params ist es am besten, unter diesen Sammlungselementen keine Elemente mit demselben Namen zu haben. Wenn Sie nur ein Datenelement im Formular benötigen, aber Request statt Request.Form verwenden, sucht das Programm auch in QueryString und ServerVariable. Wenn in QueryString oder ServerVariable ein Element mit demselben Namen vorhanden ist, ist der erhaltene Wert nicht der gewünschte Wert.

(4) Formularvariablen direkt über die Eigenschaften des Serversteuerelements lesen

Zusätzlich zu den oben genannten drei Methoden können Sie die Formularvariablen auch direkt über die Eigenschaften des Serversteuerelements lesen. Dies ist die gebräuchlichste und einfachste Möglichkeit, Formulardaten zu erhalten. Zum Beispiel: txtUserName.Text

2. Lesen Sie die Abfragezeichenfolgenvariable

Beim Surfen im Internet werden in der Adressleiste des Browsers häufig URLs wie „xxx.aspx?id=8018“ angezeigt, wobei xxx.aspx anzeigt, dass Sie dies möchten Besuchen Sie die .aspx-Webseite. Der Inhalt, dem ein Fragezeichen (?) folgt, ist die Abfragezeichenfolge. Ihre Funktion besteht darin, den Namen und den Wert der Variablen zur Verarbeitung in diese ASP.NET-Datei zu übertragen. Abfragezeichenfolgenvariablen können auf verschiedene Arten generiert werden.

(1). Wenn die Method-Eigenschaft des HtmlForm-Steuerelements auf „get“ eingestellt ist, werden die Formulardaten beim Absenden der Webseite als Abfragezeichenfolgenvariable an die URL angehängt und an gesendet Server.

(2). Wenn Sie das -Tag oder das HyperLink-Steuerelement verwenden, um einen Hypertext-Link zu erstellen, können Sie die Abfragezeichenfolge nach der Ziel-URL einfügen und ein Fragezeichen „?“ verwenden Trennen Sie die URL und den Abfragestring
(3). Wenn beim Aufruf der Response.Redirect-Methode Variablenname/Wert-Paare an die URL-Parameter angehängt sind, werden diese Variablenwerte an die URL angehängt und an die gesendet Server, wenn die Zielwebseite geöffnet wird.
(4). Geben Sie bei der Eingabe der Anfrage-URL in die Adressleiste des Browsers das Fragezeichen „?“ und die Abfragezeichenfolge ein. Beispiel: http://…/t.aspx?Id=8018

In den oben genannten Situationen kann die Abfragezeichenfolgenvariable über die Eigenschaft Request.QueryString abgerufen werden.

Der folgende Code:

//在登陆页面 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=登陆失败!"); } }
Auf der Verifizierungsseite


Der Code lautet wie folgt:

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("登陆失败"); 
} 
}

3. Erhalten Sie die Systeminformationen des Webservers

Das Request-Objekt verwendet das ServerVariables-Sammlungsobjekt, um die serverseitigen Systeminformationen zu speichern. Diese Informationsvariablen werden im HTTP-Header enthalten und zusammen mit der HTTP-Anfrage übertragen . Die Syntax zum Abrufen von Umgebungsvariablen mithilfe des ServerVariables-Auflistungsobjekts des Request-Objekts lautet wie folgt: Request.ServerVariables[Name der Umgebungsvariablen]

Die im ServerVariables-Auflistungsobjekt gespeicherten allgemeinen Informationsvariablen lauten wie folgt:



 代码如下:

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

Cookie是在HTTP协议下服务器或脚本可以维护客户工作站上信息的一种方式。Cookie是由Web服务器保存在用户浏览器上的小文本文件,它可以包含有关用户的信息,这些信息以名/值对的形式储存在文本文件中。无论何时,只要用户连接接到服务器,Web站点就可以访问Cookie信息。Cookie保存在用户的Cookie文件中,当下一次用户返回时,仍然可以对它进行调用。

Cookies集合是由一些Cookie对象组成的。Cookie对象的类名为HttpCookie。HttpCookie类的主要属性如下:

使用Cookie时,应注意以下几点

[1].使用Cookie保存客户端浏览器请求服务器页面的请求信息时,保存时间的长短取决于Cookie对象的Expires属性,可以根据需要来设置。若未设置Cookie的失效日期,则它们仅保存到关闭浏览器为止。若将Cookie对象的Expires属性设置为DateTime.MaxValue,则表示Cookie永远不会过期。

[2].Cookie存储的数据量有所限制,大多数浏览器支持的最大容量为4096字节,因此不要用Cookie来保存大量数据。

[3].  并非所有浏览器都支持Cookie,并且数据是以明文形式保存在客户端计算机中,因此最好不要用Cookie来保存敏感的未加密数据。

[4].在ASP.NET中有两个Cookies集合,即:Response对象的Cookies集合和Request对象的Cookies集合,但两者的作用有所不同,通过前者可以将Cookie写入客户端,通过后者可以读取存储在客户端的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欢迎光临"

【相关推荐】

1. 谈谈Request和Response这两个对象的使用

2. 分享一个Request对象小案例

3. 分享asp中request对象五个获取客户端资料的方法

4. 详解ASP.NET 系统对象之Request

Das obige ist der detaillierte Inhalt vonZusammenfassung der Anwendungsbeispiele für das in Asp.net integrierte Objekt Request-Objekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vom Web zum Desktop: Die Vielseitigkeit von C# .NETVom Web zum Desktop: Die Vielseitigkeit von C# .NETApr 15, 2025 am 12:07 AM

C#.NETisversatileforbothwebanddesktopdevelopment.1)Forweb,useASP.NETfordynamicapplications.2)Fordesktop,employWindowsFormsorWPFforrichinterfaces.3)UseXamarinforcross-platformdevelopment,enablingcodesharingacrossWindows,macOS,Linux,andmobiledevices.

C# .net und die Zukunft: Anpassung an neue TechnologienC# .net und die Zukunft: Anpassung an neue TechnologienApr 14, 2025 am 12:06 AM

C# und .NET passen sich durch kontinuierliche Aktualisierungen und Optimierungen an die Bedürfnisse neuer Technologien an. 1) C# 9.0 und .NET5 Führen Sie den Datensatztyp und die Leistungsoptimierung ein. 2) .NETCORE verbessert die native und containerische Unterstützung von Cloud. 3) ASP.NetCore integriert sich in moderne Webtechnologien. 4) ML.NET unterstützt maschinelles Lernen und künstliche Intelligenz. 5) Asynchrone Programmierung und Best Practices verbessern die Leistung.

Ist C# .NET das Richtige für Sie? Bewertung seiner AnwendbarkeitIst C# .NET das Richtige für Sie? Bewertung seiner AnwendbarkeitApr 13, 2025 am 12:03 AM

C#.NetissoBableFoREenterPrise-Level Applications-WithemicrosoftCosystemDuetoitsStrongtyPing, Richlibrary, Androbustperformance.

C# Code in .NET: Erforschen des ProgrammiervorgangsC# Code in .NET: Erforschen des ProgrammiervorgangsApr 12, 2025 am 12:02 AM

Der Programmierungsprozess von C# in .NET enthält die folgenden Schritte: 1) Schreiben von C# Code, 2) Kompilieren in eine mittlere Sprache (IL) und 3), die durch die .NET -Laufzeit (CLR) ausführt. Die Vorteile von C# in .NET sind die moderne Syntax, das leistungsstarke Typsystem und die enge Integration in das .NET -Framework, das für verschiedene Entwicklungsszenarien geeignet ist, von Desktop -Anwendungen bis hin zu Webdiensten.

C# .NET: Erforschen von Kernkonzepten und ProgrammierfundamentaldatenC# .NET: Erforschen von Kernkonzepten und ProgrammierfundamentaldatenApr 10, 2025 am 09:32 AM

C# ist eine moderne, objektorientierte Programmiersprache, die von Microsoft und als Teil des .NET-Frameworks entwickelt wurde. 1.C# unterstützt die objektorientierte Programmierung (OOP), einschließlich Einkapselung, Vererbung und Polymorphismus. 2. Asynchrones Programmieren in C# wird über Async implementiert und wartet auf Schlüsselwörter, um die Reaktionsfähigkeit der Anwendungen zu verbessern. 3.. Verwenden Sie LINQ, um Datensammlungen präzise zu verarbeiten. 4. Häufige Fehler umfassen Null-Referenzausnahmen und Indexausnahmen außerhalb des Bereichs. Zu den Debugging -Fähigkeiten gehört die Verwendung eines Debuggers und Ausnahmeberechnung. 5. Leistungsoptimierung umfasst die Verwendung von StringBuilder und das Vermeiden von unnötigem Packung und Unboxing.

Testen von C# .NET-Anwendungen: Einheit, Integration und End-to-End-TestTesten von C# .NET-Anwendungen: Einheit, Integration und End-to-End-TestApr 09, 2025 am 12:04 AM

Die Teststrategien für C#.NET-Anwendungen umfassen Unit-Tests, Integrationstests und End-to-End-Tests. 1. Unit -Test stellt sicher, dass die Mindesteinheit des Codes unter Verwendung des Frameworks MStest, Nunit oder Xunit unabhängig funktioniert. 2. Integrierte Tests überprüfen die Funktionen mehrerer Einheiten kombinierter, häufig verwendeten simulierten Daten und externen Diensten. 3. End-to-End-Tests simuliert den vollständigen Betriebsprozess des Benutzers, und Selen wird normalerweise für automatisierte Tests verwendet.

Advanced C# .NET Tutorial: Ace Ihr nächstes Senior Developer InterviewAdvanced C# .NET Tutorial: Ace Ihr nächstes Senior Developer InterviewApr 08, 2025 am 12:06 AM

Das Interview mit C# Senior Developer erfordert das Mastering von Kernwissen wie asynchrones Programmieren, LINQ und interne Arbeitsprinzipien von .NET -Frameworks. 1. Asynchrones Programmieren vereinfacht die Operationen durch Async und wartet auf die Verbesserung der Anwendungsreaktionsfähigkeit. 2.LinQ betreibt Daten im SQL -Stil und achtet auf die Leistung. 3. Die CLR des Net -Frameworks verwaltet den Speicher, und die Müllsammlung muss mit Vorsicht verwendet werden.

C# .NET -Interview Fragen und Antworten: Stufen Sie Ihr Fachwissen aufC# .NET -Interview Fragen und Antworten: Stufen Sie Ihr Fachwissen aufApr 07, 2025 am 12:01 AM

C#.NET -Interviewfragen und Antworten umfassen Grundkenntnisse, Kernkonzepte und erweiterte Nutzung. 1) Grundkenntnisse: C# ist eine von Microsoft entwickelte objektorientierte Sprache und wird hauptsächlich im .NET-Framework verwendet. 2) Kernkonzepte: Delegation und Ereignisse ermöglichen dynamische Bindungsmethoden, und LINQ bietet leistungsstarke Abfragefunktionen. 3) Erweiterte Verwendung: Asynchrone Programmierung verbessert die Reaktionsfähigkeit und Expressionsbäume werden für die dynamische Codekonstruktion verwendet.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

Sicherer Prüfungsbrowser

Sicherer Prüfungsbrowser

Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools