HTTP协议

撰写日期:2019年04月11日

HyperText Transfer Protocol协议是因特网上应用最为广泛的一种网络传输协议,简称为 “HTTP协议”。

HTTP协议是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

HTTP协议初始定义了三种请求方法,分别是 GET, POST 和 HEAD方法。

  • GET: 请求指定的页面信息,并返回实体主体
  • POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体
  • HEAD: 只请求页面的首部

HTTP协议通常是链接形式展现给我们看的,以下面一条链接为例:

http://www.baidu.com:8080/dome/Login.asp?UserID=3&ID=62&page=1#ClassName

从上面的链接我们可以看出这个的链接有以下几部分组成:

  1. 协议部分:该链接的协议部分为“http:”,这就告诉我们这个网页使用的是HTTP协议。在因特网中有好几种协议,如HTTP协议,FTP协议等等,这个网页就是运用了HTTP协议。在之后的"HTTP"后面的“//”为分隔符。

  2. 域名部分:该链接的域名部分为“www.baidu.com”。这个部分就好像是路边的指示牌一样,指向着你要去的方向。这个部分也可以使用IP地址作为域名使用,IP地址也像是路向标一样。

  3. 端口部分:在域名后面的是端口部分,域名部分与端口部分之间使用“:”作为分隔符。端口部分不是链接必须的部分,如果省略掉端口部分,那么它就会启用默认端口80。

  4. 虚拟目录部分:从域名部分之后的第一个分隔符“/”开始到最后一个分隔符“/”就是虚拟目录部分。虚拟目录也不是链接必须的部分。这个链接的虚拟目录为“/dome/”.

  5. 文件名部分:从域名部分后的最后一个分隔符“/”开始到“?”为止;如果没有“?”,则是从域名后的最后一个“/”开始到“#”为止;如果没有“?”和“#”,那么从域名后的最后一个“/”开始到结束,都是文件名部分。这里的文件名是“Login.asp”。

  6. 锚部分:从“#”开始到最后,都是锚部分。这里的锚部分是“ClassName”。

  7. 参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。这里的参数部分为“UserID=3&ID=62&page=1”。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。

HTTP协议有一个HTTP Status Code(简称HTTP状态码)的回复消息,这是访问网页时浏览器向所在服务器发出请求,然后服务器回复网页所发出来的信息以响应浏览器的请求。

到现在为止,我只见过以下四种HTTP状态码:

  • 301 - 资源(网页等)被永久转移到其它URL
  • 400 - 客户端请求的语法错误,服务器无法理解
  • 404 - 请求的资源(网页等)不存在
  • 500 - 内部服务器错误

而见得最多的就是404(Not Found)与500(Internal Server Error):
在这里插入图片描述
在这里插入图片描述

如有错漏,感谢纠正!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值