1.静态语言和动态语言

静态语言:在服务器端,不会被执行,直接作为 字符串 发回给浏览器,由浏览器运行的语言( HTML+CSS+JS)。
 
动态语言:在服务端,会被服务器端的某种语言的虚拟机执行的语言( .Net,Php,Java)。

2.数据报文

5.1请求报文

浏览器向服务器发送的数据。
 

5.2响应报文

服务器向浏览器返回的数据
 

3.Asp.net网站程序集

asp.net会把网站编译成程序集,每个动态页面 (ashx,aspx)都编译成页面类。
当浏览器地址栏写入一个请求页面路径并回车后,浏览器会向服务器发送一个请求报文,服务器接收到后,会告诉 Framework去处理这次请求,FW就会被请求页面类,并创建这个页面类的对象,调用里面的 ProcessRequest方法。
 

4.向浏览器输出数据

context.Response,用来从服务器向浏览器发送数据的!
4.1输出字符串:Response.Write("字符串 ");
/// <summary>
/// 每次被浏览器请求的时候,都会调用这个方法
/// </summary>
/// <param name="context">HTTP上下文对象 </param>
public void ProcessRequest( HttpContext context)
{
    //向浏览器输出字符串!
    context.Response.Write( "<br/>哇哈哈哈哈~~~~~~~~~ !");
}
 
 

5.浏览器向服务器传递参数

5.1浏览器Get传参( url传参)

5.1.1几种情况:(本质都是使用 get请求报文提交)
a.在地址栏输入 url并确定 List.ashx?cid=2
b.通过 js的window.location 跳转 window.location="List.ashx?cid=2";
c.通过表单的 get提交 <form action="List.ashx?cid=2" method="get"></form>
d.超链接跳转
e.使用异步 get提交数据(以后讲)
 
5.1.2对应的请求报文:
 
5.1.3服务器接收:
string cid = context.Request.QueryString[ "cid"];
string cid = context.Request.Param[ "cid"];
 
补充,获取上下文的另一种方式:
//http上下文可以通过 静态属性 Current 获取
bool issame = HttpContext.Current == context;//true
 
【图例】

5.2浏览器Post传参(请求报文体传参)

5.2.1Post提交的一种情况
使用表单,并设置表单 Method=Post
<form method ="post" action ="02Modify.ashx">
<input type="text" id ="txtName" name ="txtName" value =".Net五期训练营" />
<input type="text" id ="txtCount" name ="txtCount" value ="70" />
<input type="hidden" name ="txtId" value ="5" />
<input type="submit" value ="确定" />
</form >
 
5.2.2对应的请求报文 注意:表单数据被放在 请求报文体中 传递
 
5.2.3服务器端接收表单post数据
string strName = HttpContext.Current.Request.Form["txtName" ];
 
【图例】
6.请求管道与19个标准事件
 
 
 

ASP.Net之一般处理程序的更多相关文章

  1. Asp.net web服务处理程序(第六篇)

    四.Web服务处理程序 对于Web服务来说,标准的方式是使用SOAP协议,在SOAP中,请求和回应的数据通过XML格式进行描述.在Asp.net 4.0下,对于Web服务来说,还可以选择支持Ajax访 ...

  2. Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较

    Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较 1.首先写一个Go语言的简单WEB程序,就返回一个HelloWord! package main import ( f " ...

  3. ASP.NET Core--条件处理程序中的依赖注入

    翻译如下: 在配置期间(使用依赖注入),授权处理程序必须在服务集合中注册. 假设您有一个在授权处理程序中要解析规则的仓储库,并且该仓储库已在服务集合中注册. 授权将在构造函数还原并注入. 例如,如果你 ...

  4. asp.net中一般处理程序中添加session

    asp.net中使用一般处理程序(.ashx)添加session,利用context.session["xxx"] = value的方式把值保存到session:运行的时候会出现该 ...

  5. ASP.NET ASHX 一般处理程序教程

    你不想创建一个普通ASP.NET的Web窗体页.而又要通过一个查询字符串返回一个动态的图片.XML或者非HTML网页.这是一个用C#编程语言编写的使用ASHX(一般处理程序)的简单教程. 简介 首先, ...

  6. ASP.NET的一般处理程序对数据的基本操作

    TableList.ashx: <%@ WebHandler Language="C#" Class="TableList" %> using Sy ...

  7. asp.net使用一般处理程序实现文件下载

    首先有一个html页面,页面有一个链接,点击链接弹出文件下载/保存(类似迅雷下载链接) <!DOCTYPE html> <html> <head> <meta ...

  8. asp.net在一般处理程序里面操作Session

    1.要在一般处理程序中获取其他页面的session值,需要引用名空间: using System.Web.SessionState; 2.然后继承一个接口:IRequiresSessionState ...

  9. ASP.NET的一般处理程序对图片文件的基本操作

    以一个小项目为例: 验证码: public class VerifyCodeHelper { public VerifyCodeHelper() { this.ran = new Random(); ...

随机推荐

  1. PTA——删除重复字符

    PTA 7-60 删除重复字符 #include<stdio.h> #include<string.h> #define N 85 int main() { ,flag; ch ...

  2. 十二生肖查询网页版制作(php)

    今天无聊做了一个十二生肖查询器: 预览网址效果:http://hongxing01.hktd02u.me48.com/03Sxcx 源代码下载:http://down.51cto.com/data/1 ...

  3. 【文文殿下】洛谷P2408 不同子串个数

    题目链接https://www.luogu.org/problemnew/show/P2408 SAM裸题,大力求就行了 #include<cstdio> #include<cstr ...

  4. [推荐] 网络侦查工具 NMAP 简单入门

    [推荐] 网络侦查工具 NMAP 简单入门 # 前言 作为一只运维开发,总是避不开要和网络打交道的.尤其是当自身能力到达瓶颈,开始从事云计算以求突破.会有搭建多台虚拟机的需要,这时候如果在手工的查询 ...

  5. 解决flex布局下, elementui table组件不能跟随父组件的宽度而变化的bug

    bug: 我在flex布局的元素中使用了elementui的table组件,饿了么的table上会被加一个动态的宽度, 当第一次改变flex元素宽度的时候.table的动态宽度会变化,第二次和以后就不 ...

  6. Mac 10.12安装Atom文本增强编辑工具

    下载: https://atom.io/

  7. Homebrew设置代理

    在终端上输入环境变量: export ALL_PROXY=socks5://127.0.0.1:1080 注意:这个只在当前生效,关闭终端就不行了. 原理:本身使用curl进行访问,所以通过环境变量能 ...

  8. Sublime Text 3插件收集

    0.Package Control 这个是必须装的,就不多解释了 1.ConvertToUTF8 支持 GBK, BIG5, EUC-KR, EUC-JP, Shift_JIS 等编码的插件. 2.B ...

  9. [Xamarin.Android] 如何透過電子郵件部署Xamarin.Android App (转帖)

    Android App在部署到實機的時候不像iOS的App限制你一定要使用向Apple申請的開發者憑證,在Apple不管是你要上架到Apple Store或者是企業內部署,你都必須向蘋果申請憑證. 而 ...

  10. 更换bbr内核

    1:首先yum update -y更新到最新CentOS 7.3 1611cat /etc/redhat-releaseCentOS Linux release 7.3.1611 (Core) 2: ...