一、http协议url组成部分详解:
1、协议类型
2、ip(服务器地址)
3、port(或域名)
4、path(请求资源所在地址)
5、?(资源地址与参数的分割符合)
6、参数(请求参数)
7、&(多个参数之间的连接符号)
8、url中如果存在中文,传输时是以urlencode类型传输的,可以通过url编码或解码来转换(如中国转换成urlencode是:%e4%b8%ad%e5%9b%bd)
9、url编码或解码的地址,可直接百度url编码或url解码

二、常见协议类型(方法):
1、get((1.0版本)无body):
2、post((1.0版本)可有body,也可无body):
3、put(1.1版本):
4、delete(1.1版本):
5、head(1.0版本):
6、trace(1.1版本):

三、request(url请求)组成部分:

1、请求行:
包含:
请求方法(get或post)、请求的url、协议及版本号
-----------------示例-----------------------
GET http://search.cnki.net/sug/topk.ashx?jsonvar=top_Words_Json&v=1507789236929&td=1507789236929 HTTP/1.1

2、请求头:
包含:
host (服务器主机地址;域名)
Connection (连接:keep-alive为持续连接)
User-Agent (用户代理:包含客户端类型(浏览器)、客户端所用引擎、客户端(浏览器)及版本) #Mozilla为一种浏览器,AppleWebKit为苹果引擎;
可以用于统计用户的客户端的类型占比
Accept 客户端接受的数据类型
Referer 客户端发送请求的主页,可用于统计点击量
Accept-Encoding 客户端接受的编码类型
Accept-Language 客户端接受的语言类型
Cookie 一种包含用户信息的认证

------------示例--------------------
Host: search.cnki.net        #服务器主机地址
Connection: keep-alive        #keep-alive为持续连接(http/1.1默认连接方式),可以处理多个请求或响应
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36      #客户端类型及版本
Accept: */*          #表示客户端(浏览器)接受的数据类型
Referer: http://www.cnki.net/        #主页地址,表明请求是从哪个主页发送的请求
Accept-Encoding: gzip, deflate        #支持(接受)的编码类型,Accept为接受支持
Accept-Language: zh-CN,zh;q=0.9       #支持(接受)的语言
Cookie: SID_sug=111054; Ecp_ClientId=8190503104800362202; Ecp_IpLoginFail=19050327.38.44.37 #cookie

完整的报文信息:

http协议详解1的更多相关文章

  1. HTTP协议详解(转)

    转自:http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx Author :Jeffrey 引言 HTTP是一个属于应用层的面向对象的 ...

  2. HTTP协议详解

    Author :Jeffrey 引言 HTTP 是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和 扩展. ...

  3. 动态选路、RIP协议&&OSPF协议详解

    动态选路.RIP协议&&OSPF协议详解 概念 当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路.路由器之间必须采用选路协议进行通信,这样的选路协议 ...

  4. ASP.NET知识总结(3.HTTP协议详解)

    引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1. ...

  5. 接口测试之HTTP协议详解

    引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1. ...

  6. 计算机网络(12)-----HTTP协议详解

    HTTP协议详解 http请求 http请求由三部分组成,分别是:请求行.消息报头.请求正文 (1)请求行 请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本,格式如下:Metho ...

  7. OSPF协议详解

    CCNP OSPF协议详解 2010-02-24 20:30:22 标签:CCNP 职场 OSPF 休闲 OSPF(Open Shortest Path Fitst,ospf)开放最短路径优先协议,是 ...

  8. HTTP协议详解(真的很经典)

    HTTP 是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和 扩展.目前在WWW中使用的是HTTP/1.0 ...

  9. HTTP协议详解--转载http://blog.csdn.net/gueter/article/details/1524447

    引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1. ...

  10. 关于http协议详解

    Author :Jeffrey 引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前 ...

随机推荐

  1. kubesphere集群搭建(多节点)

    kubesphere官网:https://kubesphere.io/docs/advanced-v2.0/zh-CN/introduction/intro/ 一.准备环境 1.准备服务器 maste ...

  2. maven学习之路二(2)

    上次我介绍到mybaties generator 这款mybaties的插件.这次我简单介绍下这款插件: <plugin> <groupId>org.mybatis.gener ...

  3. DP问题练习2:网格路径数量计算问题

    DP问题练习2:网格路径数量计算问题 问题描述 有一个机器人的位于一个 m × n 个网格左上角. 机器人每一时刻只能向下或者向右移动一步.机器人试图达到网格的右下角. 问有多少条不同的路径? 样例: ...

  4. Summer training round2 #4 (Training #20)

    A!:UESTC1752 B!:找区间内L到R之间内的数的个数  权值分块加莫队 C!:给你一个哈斯图 去掉其中的几条边 要求输出字典序最大的拓扑排序:线段树模拟拓扑排序 D!:要求你找到最短路树并输 ...

  5. 微信小程序 点击事件 传递参数

    wxml: data-参数名="值" bindtap="函数名" <view class="buy-button {{cap_select == ...

  6. [LeetCode 92] Reverse Linked List II 翻转单链表II

    对于链表的问题,根据以往的经验一般都是要建一个dummy node,连上原链表的头结点,这样的话就算头结点变动了,我们还可以通过dummy->next来获得新链表的头结点.这道题的要求是只通过一 ...

  7. python基础(while、运算符、编码初始)

    ------------恢复内容开始------------ <!doctype html> while循环 while循环 循环:不断重复着某件事就是循环 while 关键字 死循环:w ...

  8. js 两个页面的传值 可以用父页面 子页面做

    js  两个页面的传值  可以用父页面 子页面做 比如弹窗  将值传到子页面的时候  用get超长

  9. DES加密 DESEncrypt

    /// <summary> /// DES加密/解密类. /// </summary> public class DESEncrypt { public DESEncrypt( ...

  10. cordova打包项目下载gradle失败

    在使用cordova打包项目的时候有时会因为网络环境原因导致下载gradle失败的情况,个人找到两种解决方案. 方案一: 根据报错的提示选择要下载的gradle去浏览器中下载,然后将gradle压缩包 ...