学习概要:WEB应用程序BS模式过程思想;基本对象Request、Response的使用。
昨天学习了ASP。NET中BS模式。ASP。NET程序的执行过程是:客户端输入IP地址及端口号(套接字)通过Post和get向服务器发出Request请求,服务器调用Request.Form,Request.QueryString,Request.Params,方法来来获得请求信息。并判断是否要访问数据库,如果需要则向数据库服务器请求数据,返回数据后再由WEB服务器解释执行后再通过浏览器返回给客户端。
具体过程:
步骤1;客户端请求
这一步中,用户会单击链接,或者在浏览器中输入一个uRL,或者执行一些类似于启动个请求的操作。请求是一个必须发送到Web服务器的消息,为了发送请求(或响应)消息,浏览器需要完成下面3件事情:
第一,以标准的方式描述这个消息,以使接收这个消息的web服务器能够理解它。因此要用到HTTP协议(超文本传输协议)。web利用这个协议来描述请求和响应。经过描述的请求消息被称为HTTP请求,它有一个非常特别的格式,包含了有关请求的信息以及把此信息传递到web服务器所需用到的信息。
第二,对消息进行打包,以便在网络上安全传递。因此要用到TcP协议(传输控制协议).
第三,指定该消息的地址,即消息应该被传递到的位置。因此要用到IP协议(网际协议)
步骤2:路由请求
这个请求消息会借助HTTP、TcP和IP协议进行格式化,这样一来,路由请求中涉及到的每一台机器都可以理解这个消息(也就是说,把请求从一台机器传递到其他机器,就像它从Web客户端寻找到Web服务器的路径一样)。 Web服务器将被连接到Internet(直接连接或通过防火墙连接),并将Internet通过IP地址得到惟一标识。IP地址是4个数字的集合,这4个数字都是。到255之间的数字。
然而,最初的请求可能并不具备IP地址——它很有可能是以一个被命名的Web站点的地址开始的uRL(通常情况下这种方式更容易记忆,比如htqp://www.wrox.com/。IP地址和其被命名的地址之间的链接是通过叫dns(域名服务器)映射的。例如,dns通常会把URLhttp://www.wrox.com/映射到IP地址http://204.148.170.145/——以便利用URLhtqp://www.wrox.com/对Web页面发出的请求能够被定向到IP地址为
http:204.148.170.145/的web服务器。
步骤3:接收和处理HTTP请求
web请求的标准化格式是由HTTP定义的,因此当HTTP请求到达其目的地时,Web服务器很清楚该如何读取这个请求。
HTTP协议中,web客户向服务器发出请求的方式通常有两种:
客户可以请求服务器向其发送一个诸如Web页面、图片或MP3文件这样的资源。这被称为GET请求,因为它是从服务器“获取”信息。这是一个通用的方法,例如,在Web站点内开发查询工具时,同样的请求会不止一次的出现。这也是请求简单的web页面和图像的方法。
客户请求服务器执行一些处理,以使生成响应。这被称为PosT请求,因为客户发送的信息必须要服务器处理,之后.客户还会等待服务器的响应。使用这个方法的可能性比较大,比如,在一个联机购物站点提交个人数据时,或者向服务器发送信息的情况下,都会使用这种方法。
步骤4:服务器处理
web服务器是运行应用程序的场所。它的职责是确保任何必要服务器端处理的进行,以便完成任务并生成响应。
如果HTML请求是对简单HTML页面的请求,那么Web服务器就会查找这个HTML页面把它包装到一个HTTP响应,并把它分配给客户。与此相反,如果请求的是一个AsPx页面,那么在把那个新生成的HTML包装到一个准备发送给客户的HTTP响应之前,web服务器会把这个请求传递到AsP.NET处理器,由该处理器处理这个页面并生成HTML。
HTTP响应由两部分组成——题头和响应体。题头信息会告知浏览器请求是否成功,或者处理请求时是否会出现错误。例如,如果web服务器接收到了请求,但无法找到被请求的页面,那么题头中就会出现HTTP 404(无法找到文件)错误代码。响应体中放置的是被成功请求的资源。
步骤5:路由响应
由web服务器生成的HTML贝面,是按照HTTP响应消息进行描述,并利用TCP/IP进行打包并指定地址的。返回的地址是一个IP地址,它被包含在步骤I发送的HITP请求消息中。HTTP响应消息通过网络被路由回它的目标位置——最初发出请求的web客户。
步骤6:客户端处理和提交
HTTP响应到达web客户时,浏览器会读取这个响应,并处理所有的客户端代码。处理过的代码会显示在浏览器窗口中。
现在我们已经知道了请求一个页面时都发生了什么事情。
客户端为:HTML文档,包含两个文本控件,和一按钮,代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="
http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.boderStyle {
border: thin solid #0033FF;
}
-->
</style>
</head>
<body>
<form name="form1" method="post" action="Login.aspx">
<table width="33%" border="1" align="center" class="boderStyle">
<tr>
<td width="31%">用户名:</td>
<td width="69%"><input name="txtUserName" type="text" id="txtUserName" /></td>
</tr>
<tr>
<td>密 码:</td>
<td><input name="txtUserPwd" type="text" id="txtUserPwd" /></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<p>
<input name="btnLogin" type="submit" id="btnLogin" value="登录"/>
<input name="btnReset" type="reset" id="btnReset" value="重置"/>
</p>
</div></td>
</tr>
</table>
</form>
</body>
</html>
操作代码为:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class Login : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string userName = Request.Form.Get("txtUserName").ToString();
string userPwd = Request.Form["txtUserPwd"].ToString();
//SqlConnection conn = new SqlConnection("Data Source=ACER4720\\SQLEXPRESS;Initial Catalog=test;Persist Security Info=True;User ID=sa;PWD=833199");
string ConnStr = "Data Source=ACER4720\\SQLEXPRESS;Persist Security Info=false;uid=sa;pwd=833199;Initial Catalog=test";
SqlConnection conn = new SqlConnection(ConnStr);
conn.Open();
SqlCommand cmd = new SqlCommand("select count(*) from UserTable where uid='" + userName + "'and pwd='" + userPwd + "'", conn);
int count=Convert.ToInt32(cmd.ExecuteScalar());
if (count>0)
{
Response.Redirect("default.aspx");//default.aspx为随便一个页面,只是提示信息
}
else
{
Response.Redirect("LoginFail.htm");");//LoginFail 为随便一个页面,只是提示信息
}
}
}
分享到:
相关推荐
ASP.NET是一种由微软开发的服务器端Web应用程序框架,主要用于构建动态、数据驱动的Web应用程序。这个"ASP.NET学习网站设计"的项目显然旨在教授如何利用ASP.NET技术来创建功能丰富的在线学习平台,其中包括视频播放...
ASP.NET学习大全,包括以下文档: GridView导出excel 小山的TreeView数据绑定方法 ADO.NET在开发中的部分使用方法和技巧.txt ADO.NET中的视图和过滤器.doc ASP .NET - ArrayList对象.txt asp.net 2.0中TREEVIEW中...
ASP.NET学习大全(源代码整理)是一份宝贵的资源,涵盖了ASP.NET开发中的多个关键知识点,包括JavaScript基础应用、文件上传实现、Web Service交互以及数据展示的优化技巧。这份资料可以帮助开发者深入理解并实践这些...
这个“ASP.NET学习资料”压缩包包含了一系列与ASP.NET相关的学习资源,对于想要深入理解或者入门ASP.NET的开发者来说是非常宝贵的。 首先,我们来看SQLServer2005JCJCYM.rar,这可能是一个关于SQL Server 2005的...
在这个"ASP.NET学习网站"中,我们可能找到了一个使用VS2005(Visual Studio 2005)开发的入门级项目,该项目使用了ACCESS数据库作为数据存储解决方案。 **Visual Studio 2005:** Visual Studio 2005是微软的一个...
【ASP.NET基础学习】 ASP.NET 是一种由微软公司推出...总之,ASP.NET为初学者提供了一个强大而全面的平台,通过系统的理论学习和实践操作,可以逐步掌握Web开发的技能,实现从零基础到能够独立开发复杂Web应用的转变。
### ASP.NET 学习资料详解 #### 一、ASP.NET简介 ASP.NET 是 Microsoft 开发的一个用于构建动态 Web 应用程序的框架。它基于通用语言运行时 (CLR),允许开发人员使用多种 .NET Framework 语言(如 C#、VB.NET 等)...
ASP.NET是微软公司推出的一种用于构建Web应用程序的框架...在学习过程中,建议动手实践每一个示例,遇到问题时积极查阅文档或在线资源,不断积累经验,相信你很快就能掌握ASP.NET的基础,并能构建出自己的Web应用程序。
ASP.NET是微软公司推出的一种用于构建动态网站、Web应用程序和服务的框架。它基于.NET Framework,提供了丰富的功能和组件,使得开发者能够用高级语言如C#或VB.NET编写服务器端代码,实现网页的交互逻辑。 首先,...
ASP.NET是微软开发的一种用于构建Web应用程序的框架,它提供了丰富的功能和工具,使得开发者能够高效地构建动态网站、Web应用和服务。...通过深入学习这些内容,开发者可以提升在ASP.NET平台上构建复杂应用的能力。
ASP.NET MVC ABP框架入门学习教程 一、为什么使用ABP框架 在软件开发过程中,我们遇到了许多重复机械的工作,例如数据持久层实现、日志、ASP.NET MVC、IOC以及自动映射等。这些组件的组合使软件系统的复杂度急剧...
1. **Web Forms**:ASP.NET Web Forms是ASP.NET的一种编程模型,它允许开发者通过拖放控件和编写代码来创建交互式网页。在在线考试系统中,可以使用Web Forms创建试题展示、答题提交、成绩显示等页面。 2. **MVC...
### ASP.NET MVC 学习手册知识点详解 #### 一、ASP.NET MVC 框架简介 **ASP.NET MVC**(Model-View-Controller)是由微软官方提供的用于开发**Web应用程序**的一种框架。它基于MVC架构模式设计,适用于构建动态...
这本书籍“ASP·NetC学习书籍”是专为初学者设计的,旨在帮助读者掌握这一技术的基础和进阶知识。以下是该书可能涵盖的一些关键知识点: 1. **基础概念**:首先,书籍可能会介绍ASP.NET C#的基本概念,包括Web应用...
1. ASP.NET核心(ASP.NET Core) ASP.NET Core是一个跨平台、高性能、开源的框架,支持Windows、Linux和macOS。它重构了传统的ASP.NET,旨在提高性能和可移植性。ASP.NET Core包含了一系列组件,如MVC(Model-View-...
1. **ASP.NET基础** ASP.NET的基础包括Web Forms、MVC(Model-View-Controller)和Web API。Web Forms是最早的ASP.NET模型,它提供了事件驱动的编程模型,类似于Windows应用程序。MVC模式则更注重分层设计,让...
1. **ASP.NET页面生命周期**:了解一个ASP.NET网页从请求到响应的过程,包括初始化、加载、验证、呈现和卸载等各个阶段,这对于理解如何在适当的时间进行页面操作至关重要。 2. **控件和事件处理**:ASP.NET提供...
本资源包"ASP.NET学习大全(整理)"显然是一个全面的学习资源集合,旨在帮助初学者快速掌握ASP.NET技术,避免在学习过程中迷失方向。 1. **基础概念** - ASP.NET是微软的服务器端编程模型,用于构建动态网站、Web...
ASP.NET是微软开发的一种用于构建Web应用程序的框架,它允许开发者使用C#或VB.NET等.NET语言编写服务器端代码。而MySQL则是一种流行的开源关系型数据库管理系统,常用于存储和管理Web应用的数据。本资源“asp.net...
ASP.NET MVC4是一个用于构建可测试、模块化和高性能Web应用程序的框架,它结合了ASP.NET Web Forms的事件驱动模型和ASP.NET Web Pages的简洁语法。在这个“ASP.NET MVC4 Demo分步骤学习实例”中,我们将深入理解MVC4...