两个例子(一个get,一个post)(一个是访问页面,一个是提交修改后的博文):

preferences.aspx:(header)(文件)

1.     Remote Address:42.121.252.58:80

2.     Request URL:http://www.cnblogs.com/lamian

3.     Request Method:GET

4.     Status Code:200 OK

5.     Request Headers

    1. GET /lamian/ HTTP/1.1
    2. Host: www.cnblogs.com
    3. Connection: keep-alive
    4. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    5. User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.66 Safari/537.36
    6. Referer:http://i.cnblogs.com/PostDone.aspx?postid=3983497&actiontip=%e4%bf%9d%e5%ad%98%e4%bf%ae%e6%94%b9%e6%88%90%e5%8a%9f (告诉服务器是从哪个页面跳转过来)
    7. Accept-Encoding: gzip,deflate,sdch
    8. Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.6,en;q=0.4
    9. Cookie: __unam=3d91f7a-147ba379df3-3b7be37d-1;

CNZZDATA1000042812=152741559-1410247936-%7C1410247936; SyntaxHighlighter=javascript;

.DottextCookie=B3E0031D9CED2DC8B775A91453AF8C203F532036C245EAC3675BC5CFA4F0AF73B9CCBE266F7BCDBD3F1294E941BC0A43EEC90914DECBDD82C99F02FC99C80A87E1153509A8F5CC207AEC7E274C30B6A89CCE11168973D19DC808E3C3A42043C8E00F1EC8D5604761F78F9F71; AJSTAT_ok_times=1;

__utma=226521935.1598881982.1395737880.1410234138.1411695819.19;

__utmc=226521935; __utmz=226521935.1411695819.19.19.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=HTTP%E4%B8%AD%E7%9A%84get%E5%92%8Cpost%E7%9A%84%E5%8C%BA%E5%88%AB; _ga=GA1.2.1598881982.1395737880; _gat=1

(上网的时候,浏览器寄存在用户电脑的一些个人设置,用来标示用户的个人信息)

If-Modified-Since: Thu, 25 Sep 2014 09:51:04 GMT

6.     Response Headers

    1. HTTP/1.1 200 OK
    2. Date: Fri, 26 Sep 2014 02:48:17 GMT
    3. Content-Type: text/html; charset=utf-8
    4. Transfer-Encoding: chunked

(表示输出的字段大小不能确定,消息体以未定的块组成,并以一个大小为0的块结束。配合Content-Encoding: gzip使用,可以在解析gzip的时候简便不少,就不用申请很大一块字节,可以一块一块来输出,更科学,占用资源更少)

在http1.1的相关规定中,采取了持久链接的解决方案,意思就是说可以在一个TCP链接成功了之后发送多条数据请求和响应。但是这个带来的缺点就是,我必须知道什么时候一个报文什么时候开始,什么时候结束。最简单的应对策略便是使用content-length,但是,这个方法只有在报文长度可以预判的情况下才能起作用。而对于动态的内容或者长度不可知的内容的时候,采用分块(块的大小几乎是一样的)的方法实现传送。

  5. Connection: keep-alive

  6. Vary: Accept-Encoding

  7.Cache-Control: private, max-age=10

    private,private、no-cache、must-revalidate表示当再打开新窗口的时候,会重新访问服务器。

    max-age=10表示10秒内不会重新访问服务器

  8.Expires: Fri, 26 Sep 2014 02:48:24 GMT

    缓存失效日期

  9.Last-Modified: Fri, 26 Sep 2014 02:48:14 GMT

    在浏览器第一次请求某一个URL时,服务器端的返回状态会是200,内容是客户端请求的资源,同时有一个Last-Modified的属性标记此文件在服务期端最后被修改的时间

  10.X-UA-Compatible: IE=10

  11.Content-Encoding: gzip(使用压缩技术,可以节省流量)

  下面是一个post请求:

1.     Remote Address:121.199.251.55:80

2.     Request URL:http://i.cnblogs.com/EditPosts.aspx?postid=3948833

3.     Request Method:POST

4.     Status Code:302 Found(网页重定向302为临时性转移)

5.     Request Headers

    1. POST /EditPosts.aspx?postid=3948833 HTTP/1.1
    2. Host: i.cnblogs.com
    3. Connection: keep-alive
    4. Content-Length: 28942
    5. Cache-Control: max-age=0
    6. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    7. Origin: http://i.cnblogs.com
    8. User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.66 Safari/537.36
    9. Content-Type: application/x-www-form-urlencoded
    10. Referer: http://i.cnblogs.com/EditPosts.aspx?postid=3948833
    11. Accept-Encoding: gzip,deflate
    12. Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.6,en;q=0.4
    13. Cookie: __unam=3d91f7a-147ba379df3-3b7be37d-1;

SyntaxHighlighter=javascript;(代码着色工具)

.DottextCookie=B3E0031D9CED2DC8B775A91453AF8C203F532036C245EAC3675BC5CFA4F0AF73B9CCBE266F7BCDBD3F1294E941BC0A43EEC90914DECBDD82C99F02FC99C80A87E1153509A8F5CC207AEC7E274C30B6A89CCE11168973D19DC808E3C3A42043C8E00F1EC8D5604761F78F9F71; .DottextCookie=D83809F6D9D0A42DBB8BA4441B28ECFD06673D66F70CAF34C1A800539F3A7E08D2428219C1CBF1EDF475D14C2F819FBAD5D6E083B69595505E0375BCA46E07ECD7F40A0DDAA292317C4A20A4277CD28590583474FFCD911DAF9CCE9AD84AD99D42BA95C511F2DDB572269DF0; __utma=226521935.1598881982.1395737880.1410234138.1411695819.19;

__utmc=226521935; __utmz=226521935.1411695819.19.19.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=HTTP%E4%B8%AD%E7%9A%84get%E5%92%8Cpost%E7%9A%84%E5%8C%BA%E5%88%AB; _ga=GA1.2.1598881982.1395737880; _gat=1; SERVERID=9b2e527de1fc6430919cfb3051ec3e6c|1411719215|1411719183

Query String Parameters

postid=3948833

1.     Form Dataview parsed

    下面是一个要提交的表单(修改的博文)意思一下:

    __VIEWSTATE=%2………………………………………………24tbPublisTime=2014%2F9%2F1+11%3A04%3A00

2.     Response Headers

    1. HTTP/1.1 302 Found
    2. Date: Fri, 26 Sep 2014 08:13:36 GMT
    3. Content-Type: text/html;
    4. charset=utf-8
    5. Content-Length: 215
    6. Connection: keep-alive
    7. Cache-Control: private (再打开新的页面的时候,会重新访问服务器)
    8. Location:/PostDone.aspx?postid=3948833&actiontip=%e4%bf%9d%e5%ad%98%e4%bf%ae%e6%94%b9%e6%88%90%e5%8a%9f
    9. X-AspNet-Version: 4.0.30319 (asp.net是一个技术,这个技术能使得客户端页面上的脚本可以在服务器上运行)
    10. X-Powered-By: ASP.NET (服务器应用程序支持语言)
    11. X-UA-Compatible: IE=10
    12. Set-Cookie: SERVERID=9b2e527de1fc6430919cfb3051ec3e6c|1411719215|1411719183;Path=/

HTTP基础(分析两个例子)的更多相关文章

  1. C#堆栈原理(我有两个例子测试你到底会不会)

    背景 上次写了一篇文章关于try finnally的一些疑问(被我用windows live覆盖了,草),后来经过大神们解释,我明白了在我理解了try.finnally运行原理后,还欠缺的就是关于值类 ...

  2. 解决Linux终端乱码的两则例子

    现象描述 我们先来说一下出现乱码的原因. 例子 先举个实际的例子,我们一般通过ssh远程到服务器上进行操作.当在终端上执行一些有输出的任务时,有可能会遇到乱码,特别是输出中有中文时. 比如,我登陆上o ...

  3. 264分析两大利器:264VISA和Elecard StreamEye Tools

    学了264有将近3个月有余,好多时候都在学习老毕的书和反复看JM86的代码,最近才找到264分析两大利器:264VISA和Elecard StreamEye Tools.不由得感叹,恨不逢同时. 简单 ...

  4. (3两个例子)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练

    从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练 1综述http://www.cnblogs.com/jsxyhelu/p/7907241.html2环境架设http://www.cn ...

  5. 【进阶之路】Redis基础知识两篇就满足(二)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  6. 【进阶之路】Redis基础知识两篇就满足(一)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第一篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  7. 【漏洞分析】两个例子-数组溢出修改返回函数与strcpy覆盖周边内存地址

    修改返回函数 return 0 下面的程序的运行流程为main()函数调用了Magic()函数,通常执行完Magic()函数后会调用return 0 的地址, 但是在执行Magic()函数中时,数组下 ...

  8. libevent源码分析:time-test例子

    time-test例子是libevent自带的一个例子,通过libevent提供的定时事件来实现,间隔固定时间打印的功能. /* * gcc -g -o time-test time-test.c - ...

  9. asp.net web api 2.2 基础框架(带例子)

    链接:https://github.com/solenovex/asp.net-web-api-2.2-starter-template 简介 这个是我自己编写的asp.net web api 2.2 ...

随机推荐

  1. JAVA简易的注册会员系统

    public class Login { public static void main(String[] args) { System.out.println("*****欢迎进入注册系统 ...

  2. shell总结

    1. shell脚本的变量赋值 变量赋值语句中的等号左右不能有空格 即 a = 4 //错误 a=4   //正确 2. shell脚步的执行需要权限 chmod +x shell.sh ./shel ...

  3. js复制到粘贴板

    http://www.cnblogs.com/52fhy/p/5383813.html(移动端有兼容性问题) 要页面加载完直接绑定事件,否则第一次点击是绑定事件,第二次才触发事件 移动端需要设置tex ...

  4. 回文串(bzoj 3676)

    Description 考虑一个只包含小写拉丁字母的字符串s.我们定义s的一个子串t的“出 现值”为t在s中的出现次数乘以t的长度.请你求出s的所有回文子串中的最 大出现值. Input 输入只有一行 ...

  5. User Experience Collection

    about a data driven system front end: 1. about succeeded requests: they do not want to see alerts ab ...

  6. 【Visual Studio】“rc.exe”已退出,代码为 5 ("rc.exe" exited with code 5.)

    [解决方案]找到 rc.exe 所在目录,然后 方法1:添加该目录到 VC++ Directories --> Executable Directories中 方法2:添加到系统变量中的Path ...

  7. Spring Boot学习——表单验证

    我觉得表单验证主要是用来防范小白搞乱网站和一些低级的黑客技术.Spring Boot可以使用注解 @Valid 进行表单验证.下面是一个例子. 例子说明:数据库增加一条Student记录,要求学生年龄 ...

  8. Android判断是否为刘海屏

    主要总结主流品牌小米.华为.oppo.vivo的刘海屏判断.在某些特殊页面需要适配刘海屏时,可以用以下方法判断.或者判断屏幕比例是否大于2. /** * 小米刘海屏判断. */ public stat ...

  9. Dialog和软键盘在屏幕上的并存问题:

    最近做添加门店,门店昵称自动根据文字变化去搜索后台数据,但是一搜索软键盘就关闭了,感觉用户体验不太好.一开始根本不知道啥问题,找了半天才发现是网络请求dialog加载导致软件盘隐藏的,后面直接把dia ...

  10. JS-JavaScript String 对象-string对象方法1:fromCharCode()、charCodeAt()

    1.fromCharCode(): 可接受一个指定的 Unicode 值,然后返回一个字符串. 1). 语法:String.fromCharCode(n1, n2, ..., nX)  (n1, n2 ...