初窥

1.新建一个一般处理程序

新建一个一般处理程序

2.看看里头的代码

public class MyHandler : IHttpHandler

{

public void ProcessRequest(HttpContext context)

{

context.Response.ContentType = "text/plain";

context.Response.Write("Hello World");

}

public bool IsReusable

{

get

{

return false;

}

}

}

通常我们的逻辑大多写在 ProcessRequest里头。

服务器通过Content-Type告诉客户端响应的数据的类型,这样浏览器就根据返回数据
的类型来进行不同的处理,常用Content-Type:text/html、image/gif、
image/jpeg、text/plain、text/javascript。

3.简单介绍

对于返回结果不是HTML的,不需要回发处理的数据请求都可以通过一般处理程序完成。例如生成RSS Feed、XML、图片或执行ajax。

关于请求方式(form表单)

新建一个html页,在body中输入下面内容。

1.form的几个属性
<form name="input" action="MyHandler.ashx" method="get">
Username: <input type="text" name="user">
<input type="submit" value="Submit">
</form>
1)form中通过action属性设定表单被提交给哪个页面
    method是提交的方式,分get方式和post方式两种
    浏览器向服务器端提交数据,被提交数据的表单(包括input、select、textarea等)需要放到form中,
    为了在服务端取出表单项的值,需要在HTML中为表单元素设定name属性
2)注意id是给JS操作Dom用的,name才是提交给服务器用的。id不能重复,name可以重复,重复的name的值都会被提交给服务器。

2.GET和POST

Html表单<form>可以自动给服务器提交参数。

get是通过url请求参数的方式提交,请求参数会直接暴露在url中。如下图

post是通过报文体,提交的数据不会直接暴露给用户。如下图

3.哪些标签会被提交?
哪些标签的哪些值会被提交给服务器呢?将用户填写的内容提交到服务器有如下几个条件:
提交条件1:
只能为 input、textarea、select三种类型的标签。
提交条件2:
只有三种标签的value属性的值(select是选中项的value)才会提交给服务器。标签必须设定name属性(道理:没有name怎么拼网址i=5)。如果要将标签的value属性值提交到服务器,则必须为标签设定name属性,提交到服务器的时候将会以“name=value”的键值对的方式提交给服务器。name是给服务器用的,id是给Dom用的。
提交条件3:
对于RadioButton,同name的为一组,选中的RadioButton的value被提交到服务器。(讲道理:如果都提交,那服务器知道谁被选中了吗?)
提交条件4:
当input=submit的时候,只有被点击的按钮(要有name)的value才会被提交(道理:否则我知道谁被点了?)。
提交条件5:
放到form标签内。只有放到form标签内的标签才可能会被提交到服务器,form之外的input等标签被忽略。

一般处理程序、ASP.NET核心知识(5)--转载的更多相关文章

  1. Cookie详解、ASP.NET核心知识(7)

    无状态的http协议 1.回顾http协议 Http协议是请求响应式的,有请求才有响应,是无状态的,不会记得上次和网页“发生了什么”. 关于http协议的这种特点,黑兔在前面的这三篇博文中进行了详细的 ...

  2. 网络基础知识、ASP.NET 核心知识(1)*

    为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...

  3. ASP.NET内核几大对象、ASP.NET核心知识(7)--转载

    本文的学习流程是这样安排的. 一个简单的GDI小案例 1.说明 如果你想思考如何生成验证码,那么您第一个要解决的问题,一定是.NET动态生成图片问题. //GDI:.Net程序中进行绘图的一些类. 2 ...

  4. 一般处理程序、ASP.NET核心知识(5)

    初窥 1.新建一个一般处理程序 新建一个一般处理程序 2.看看里头的代码 public class MyHandler : IHttpHandler { public void ProcessRequ ...

  5. ASP.NET内核几大对象、ASP.NET核心知识(6)--转载

    这篇博文主要介绍一下几个对象. 1)HttpContext 2)HttpRequest 3)HttpResponse 4)context. Server 5)context.Session HttpC ...

  6. 写一个简易web服务器、ASP.NET核心知识(4)--转载

    第一次尝试(V1.0) 1.理论支持 这里主要要说的关于Socket方面的.主要是一个例子,关于Socket如何建立服务端程序的简单的代码. static void Main(string[] arg ...

  7. 让页面无刷新的AJAX、ASP.NET核心知识(9)

    AJAX简介 1.如果没有AJAX 普通的ASP.Net每次执行服务端方法的时候都要刷新当前页面,如果没有ajax,在youku看视频的过程中,就没法提交评论,页面会刷新,视频会被打断. 2.说说AJ ...

  8. Session详解、ASP.NET核心知识(8)

    介绍一下Session 1.作用 Cookie是存在客户端,Session是存在服务器端,目的是一样的:保存和当前客户端相关的数据(当前网站的任何一个页面都能取到Session). 在本篇博文的姊妹篇 ...

  9. 关于Http协议、ASP.NET 核心知识(2)

    简介HTTP (对于http协议的描述我前部分有写,但基于保证文档独立完整性的原则,我再写一遍.反正又不花钱.) 这货的学名叫:超文本传输协议 英文名字:(HTTP,HyperText Transfe ...

随机推荐

  1. Java 日期与字符串的转换

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public cl ...

  2. 解决mdi窗体闪烁的问题

    /// 解决mdi窗体闪烁的问题 /// </summary> protected override CreateParams CreateParams { get { CreatePar ...

  3. 2、shell命令学习

    1.第一个例子 touch test.sh vim test.sh #!/bin/bash echo "hello world" chmod 755 test.sh ./test. ...

  4. C#如何设置下拉COMMBOX为不可输入,只有下拉条目

    设置下拉框的DropDownStyle属性为DropDownList

  5. Spring技术_邮箱注册_激活_获取验证码

    项目结构 项目中用到的sql: create database hrSystem; use hrSystem; CREATE TABLE `emailverificationcode` ( `id` ...

  6. Oracle11g R2学习系列 之二基本概念和环境介绍

    昨天安装好了之后,发现用Chrome打开OEM发现是英文的,搞得我好奇怪:安装时明明自动显示的是中文的,为何会是英文的呢.后来想想会不会是Oracle用的是浏览器的语言呢,果断打开Chrome的设置, ...

  7. 库函数 Math

    int abs( int num ); double fabs( double arg ); long labs( long num ); 函数返回num的绝对值   #include <mat ...

  8. Go and JSON

    Go and JSON 在使用Go开发web项目的过程中, 数据库读写操作与JSON格式的输入输出是两块最基础的模块, Go的标准库已经帮我们做了很多, 熟悉database/sql与encoding ...

  9. [bzoj 1001][Beijing2006]狼抓兔子 (最小割+对偶图+最短路)

    Description 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一 ...

  10. css 三角实例

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...