南京做网站建设搭建的公司,北师大 网页制作与网站建设,lfw wordpress,中国工商建设标准化协会网站目录
介绍
HTTP状态码
HTTP报文
请求方法
HTTP版本
HTTP标头
通用标头
请求标头
响应标头
get 编码
post 编码
RESTful风格
HTTPS 绝大多数的Web服务接口都是基于HTTP协议进行通信的#xff0c;包括RESTful API和SOAP等。了解HTTP协议可以帮助测试人员理解接口的…目录
介绍
HTTP状态码
HTTP报文
请求方法
HTTP版本
HTTP标头
通用标头
请求标头
响应标头
get 编码
post 编码
RESTful风格
HTTPS 绝大多数的Web服务接口都是基于HTTP协议进行通信的包括RESTful API和SOAP等。了解HTTP协议可以帮助测试人员理解接口的请求和响应格式从而更好地进行接口测试 介绍
HTTP 协议超文本传输协议是服务端传送超文本到前端的传输协议传送的数据一般包括 HTML 文件、图片、文字等。HTTP 协议工作在前端到服务端的架构上App 端或者 Web 浏览器端通过 URL 或者接口向服务端发送请求服务端接收到前端的请求后向前端发送响应信息
HTTP状态码 1xx信息提示服务器接收到请求并正在处理。 100 Continue客户端可以继续发送请求。101 Switching Protocols服务器正在切换协议。
2xx成功请求被成功接收、理解和处理。 200 OK请求成功服务器返回所请求的资源。201 Created请求已成功处理并创建了新的资源。204 No Content服务器成功处理请求但没有返回任何内容。
3xx重定向需要进一步操作以完成请求。 301 Moved Permanently所请求的资源已永久移动到新位置。302 Found所请求的资源暂时移动到新位置。304 Not Modified客户端缓存的资源是最新的无需重新下载。303永久重定向
4xx客户端错误请求包含语法错误或无法完成请求。 400 Bad Request请求无效服务器无法理解。401 Unauthorized请求未经授权。403 Forbidden服务器拒绝请求访问。404 Not Found所请求的资源不存在。
5xx服务器错误服务器在处理请求时发生错误。 500 Internal Server Error服务器内部错误。502 Bad Gateway服务器作为网关或代理从上游服务器接收到无效响应。503 Service Unavailable服务器暂时无法处理请求 401和403的区别 401状态码表示客户端请求需要进行身份验证而此时客户端未提供凭据或提供的凭据不正确客户端需要重新进行身份验证。 403状态码表示客户端请求被禁止服务端明确告知客户端这个请求是不被允许的客户端无需重新进行身份验证。 要想解决401状态码问题需要首先确认账号密码是否正确其次检查服务端身份验证的代码是否能够正确调用。如果服务端没有进行身份验证需要根据业务规则对接口进行修改让其进行身份验证。 要想解决403状态码问题需要先确认客户端访问的资源是否有权限访问如果没有权限需要根据业务规则修改接口权限配置。 HTTP报文
HTTP协议主要由三大部分组成
起始行由方法、URL字段和HTTP版本字段组成头部字段正文消息
起始行和头部字段合并称为请求头或响应头 请求方法
GET从服务器获取资源。该请求方法不应该对服务器上的资源做任何修改只允许读取数据。POST向服务器添加新的资源。该请求方法对服务器上的资源做出修改并在服务器上创建新资源。PUT向服务器更新某个资源。该请求方法对特定资源进行完全替换如果没有找到该资源则创建一个新的。DELETE从服务器删除指定资源。HEAD与GET类似但仅返回响应头部信息不返回响应正文用于获取资源的元信息。OPTIONS获取Web服务器所支持的HTTP请求方法列表。CONNECTHTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。TRACE回显服务器收到的请求用于测试或诊断。 HTTP版本
HTTP1.0HTTP1.1HTTP2.0 HTTP标头
通用标头
请求标头
Accept告知客户端能够接收的MIME类型是什么
Accept-Charset客户端能够接受的字符编码
Accept-Encoding客户端希望服务端返回的内容编码
Accept-Language客户端希望服务端返回的语言类型
Authorization请求头用于向服务器认证用户代理的凭据通常用在服务器以401未经授权状态和WWW-Authenticate标头响应之后啥意思呢? 你不明白的话我画张图给你看
Host:指明了服务器的域名
User-Agent将创建请求的浏览器和用户代理名称等信息传达给服务器Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 响应标头
get 编码
application/x-www-form-urlencoding post 编码
1、application/x-www-form-urlencoded 默认 1、multipart/form-data 上传文件
2、application/json 用来告诉服务端消息主体是序列化后的 JSON 字符串
3、text/xml是一种使用 HTTP 作为传输协议XML 作为编码方式的远程调用规范。 XML 结构还是过于臃肿一般场景用 JSON 会更灵活方便。 RESTful风格
RESTful风格是一种基于HTTP协议的Web服务架构它使用HTTP的GET、POST、PUT、DELETE等方法来实现对资源的操作。它强调利用URI统一资源标识符来唯一地标识资源通过HTTP报文中的动词和请求头来操作资源而不是通过某些特定的RPC远程过程调用机制进行通信。RESTful架构通常采用JSON或XML格式作为数据传输格式。
在RESTful架构中资源的状态可以使用HTTP状态码进行表示如200表示请求成功404表示未找到资源等。同时RESTful还要求服务端无状态化即服务端不记录用户状态信息每次请求都包含足够的信息来描述请求。
使用RESTful架构可以使得Web应用程序更加简单、高效、可伸缩、易于维护。目前RESTful已经成为很多互联网公司API设计的首选。 HTTPS
HTTPS为了解决HTTP明文传输也没有用户验证以及未验证报文完整性的问题
HTTPS 的全称是 Hypertext Transfer Protocol Secure 它用来在计算机网络上的两个端系统之间进行 安全的交换信息(secure communication) 它相当于在 HTTP 的基础上加了一个 Secure安全 的词眼那么我们可以给出一个 HTTPS 的定义: HTTPS 是一个在计算机世界里专门在两点之间安全的传输文字、图片、音频、视频等超文本数据的约定和规范。 HTTPS 是 HTTP 协议的一种扩展它本身并不保传输的证安全性那么谁来保证安全性呢? 在 HTTPS 中使用 传输层安全性(TLS)或安全套接字层(SSL) 对通信协议进行加密。也就是 HTTP SSL(TLS) HTTPS。 HTTPS 协议提供了三个关键的指标
加密(Encryption) HTTPS 通过对数据加密来使其免受窃听者对数据的监听这就意味着当用户在浏览网站时没有人能够监听他和网站之间的信息交换或者跟踪用户的活动访问记录等从而窃取用户信息。数据一致性(Data integrity)数据在传输的过程中不会被窃听者所修改用户发送的数据会完整 的传输到服务端保证用户发的是什么服务器接收的就是什么。身份认证(Authentication) 是指确认对方的真实身份也就是 证明你是你 (可以比作人脸识别)它可以防止中间人攻击并建立用户信任 SSL/TLS
SSL安全套接字层位于OSI七层网络模型中的第五层。后面更名为TLS
TLS,用于两个通信程序之间提供保密性和数据完整性 HTTPS并不是一项新的应用层协议只是HTTP通信接口部分由SSL和TLS替代而已。通常情况下HTTP会先和直接和TCP进行通信。在使用SSL的HTTPS后则先和SSL通信接着再由SSL和TCP进行通信。也就是HTTPS是身披一层SSL的HHTP