【网络】HTTP协议(2)

一. HTTP协议

1.认识“方法”

在这里插入图片描述

GET方法

GET请求的特点:URL的query string通常不为空;body部分为空。

POST方法

POST ⽅法也是⼀种常⻅的⽅法. 多⽤于提交⽤⼾输⼊的数据给服务器(例如登陆⻚⾯).
POST请求的特点: URL的query string一般为空;body部分一般不为空,body 内的数据格式通过 header 中的 Content-Type 指定. body 的⻓度由 header 中的 Content-Length 指定.

GET与POST的区别

  1. GET 的 body ⼀般为空, 需要传递的数据通过 query string 传递, POST 的 query string ⼀般为空, 需要传递的数据通过 body 传递;
  2. GET 请求⼀般是幂等的, POST 请求无要求.(如果多次请求得到的结果⼀样, 就视为请求是幂等的).
  3. GET 可以被缓存, POST 不能被缓存. (这⼀点也是承接幂等性).
  4. 语义不同: GET ⼀般⽤于获取数据, POST ⼀般⽤于提交数据.

2.常见状态码

状态码表⽰访问⼀个⻚⾯的结果. (是访问成功, 还是失败, 还是其他的⼀些情况…).

  • 200 OK :访问成功;
  • 404 NOT FOUND :没有找到资源;
  • 403 Forbidden:访问被拒绝,没有权限;
  • 405 Method Not Allowed :所使用的方法不被支持;
  • 500 Internal Server Error :服务器挂了;
  • 504 Gateway Timeout:访问服务器超时,可能是服务器挂了,也有可能网络中断;
  • 302 Move temporarily :临时重定向,响应报⽂的 header 部分会包含⼀个 Location 字段, 表⽰要跳转到哪个⻚⾯.
  • 301 Moved Permanently:永久重定向. 当浏览器收到这种响应时, 后续的请求都会被⾃动改成新的地址.

状态码小结

在这里插入图片描述

3.认识“Header”

在这里插入图片描述
比如这份请求头,

  • Host:表⽰服务器主机的地址和端⼝. (此处DNS域名解析)
  • Content-Length :表⽰ body 中的数据⻓度.
  • Content-Type :表⽰请求的 body 中的数据格式.
    常见选项:application/json(数据为 json 格式)、application/x-www-form-urlencoded(可以认为是将query string放到了body中)、multipart/form-data(通常用于提交图片/文件).
  • User-Agent (简称 UA) :表示浏览器/操作系统的属性.
  • Referer:表⽰这个⻚⾯是从哪个⻚⾯跳转过来的.
  • Cookie: 往往可以通过这个字段实现 “⾝份标识” 的功能.
    在这里插入图片描述
    关于Cookie的几个结论:
  1. Cookie从哪里来:服务器返回给浏览器的,通常是首次访问/登陆成功之后;
  2. Cookie到哪里去:Cookie会存储在本地主机的硬盘上,后续每次访问服务器都带上Cookie;不同的客户端,保存的Cookie是不同的,即使是同一个主机,使用不同的浏览器,Cookie大概率也不同。
  3. Cookie中存什么:键值对格式的数据(程序员自定义);
  4. Cookie在浏览器这边如何组织:在硬盘本地保存,是按照不同的域名为维度分别存储;有一组用来访问百度,一组用来访问搜狗…
  5. Cookie的用途是什么:用来在客户端保存数据,最重要的数据就是用户的身份标识。

4.构造HTTP请求(使用Postman)

选择方法,输入URL,点击SEND,就可以构造出相应的请求。
在这里插入图片描述
还可以选择构造相应编程语言的代码:

  • Java常用的是OkHttpClient.
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值