Http 网络协议:基础

本文详细介绍了HTTP协议的基础知识,包括Http的定义、请求格式、报文结构、常见请求方法(GET, POST, PUT, DELETE, HEAD)、Status Code状态码、Header元数据及其重要性,特别是Content-Type、Host、Location、User-Agent等。还探讨了RESTful原则,HTTP1.0与HTTP1.1的区别,以及HTTP1.1到HTTP2.0的改进,如多路复用、Header压缩和服务器推送。" 99822805,8764403,BUAA-OO-2019 JML语言与测试实践总结,"['Java', '面向对象', 'JML', '图论', '最短路']
摘要由CSDN通过智能技术生成

一.Http是什么?

中文名称--超文本传输协议,是TCP/IP协议族的最顶层-应用层。

 

二.Http请求格式

URL格式分为三部分:协议类型://服务器地址(和端口号)/路径(Path)

                                     https://mp.csdn.net/mdeditor

         

三.Http的报文格式

1.请求:

 

  • 请求报文---->分为 : 请求行,Header,Body三部分。

  • 请求行中包括请求的方式(GET,POST等),请求的路径(主机地址之后的部分),Http的版本号

  • 请求头包括一些上传信息的属性,是固定名称的键值对形式。

  • 请求体是上传的内容,一般配合请求头Content-Type为 x-www-form-urlencoded的形式使用(表单格式),GET请求没有请求体

 

2.响应:

  • 响应报文---->分为:响应行,Header,Body三部分。

  • 响应行中包括Http版本号,响应状态码和响应状态信息三部分。

  • 响应体根据服务器返回的数据格式为主,一般响应体都是返回JSON格式。

 

四.请求方法:列举常见的5种

GET

  • 用于直接从服务器上获取资源。

  • 对服务器数据不进行修改,满足幂等性(反复调用多次时会得到相同的结果。例如执行十次相同的GET请求相当于从服务器获取十次数据,但并不会对服务器数据造成修改)。

  • 不发送Body请求体。

GET  /users/1  HTTP/1.1 
Host: api.github.com

 

POST

  • 用于增加或修改服务器上的资源。

  • 发送给服务器的内容写在Body中。

  • 不满足幂等性(增加资源的时候执行一次和执行十次不同,执行一次增加一个,执行十次增加十个)。

POST /users HTTP/1.1                                                  

Host: api.github.com 
Content-Type: application/x-www-form-urlencoded  (Content-Type为 “application/x-www-form-urlencoded”时,才会读取Body中的内容)
Content-Length: 13 

name=lvzishen&gender=male 

 

PUT

  • 用于修改服务器上的资源(和POST请求功能有些重复了,POST既能新增又能修改资源,PUT只能修改资源)。

  • 发送给服务器的内容写在Body中。

  • 满足幂等性。

 

PUT /users HTTP/1.1            
                                   
Host: api.github.com 
Content-Type: application/x-www-form-urlencoded  (Content-Type为 “application/x-www-form-urlencoded”时,才会读取Body中的内容)
Content-Length: 13 

name=lvzishen&gender=male

 

DELETE

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值