![101da49ed86f64f969a7a567e8f6aced.png](https://i-blog.csdnimg.cn/blog_migrate/26fc56bc0bb25cc2dfd685019ba571f7.jpeg)
有些登录或者验证的实现,必须先获取到相应的 cookie 信息;所谓的 cookie 就是保存在本地的以键值对形式存在的缓存信息,例如我们登录某个网站,第一次登录的时候需要输入用户名和密码,此时浏览器会提示我们是否保存,我们选了保存之后,下次在登录,就会自动带出用户名和密码,这就是 cookie 的作用;
- 添加 cookie
示例接口:
https://postman-echo.com/cookies/set
![0cf335dbb9850a4ff74fd2ea41b0e037.png](https://i-blog.csdnimg.cn/blog_migrate/bfb250dde079602e9528a443e310f9da.jpeg)
此时请求报文中的 cookie 为空
![6f833f79059a51443e588420fce3f835.png](https://i-blog.csdnimg.cn/blog_migrate/a2db11fa595613179e942a7f625f0220.png)
我们在 postman 中可以自己为自己的请求添加 cookie,添加的方式有如下两种形式:
【1】第一种添加方式,以 Params 参数的形式直接添加到头域信息中;
![bcc6514726790942084b3026935435ec.png](https://i-blog.csdnimg.cn/blog_migrate/6a45e3808cefc252217b1bd6b09c3d07.jpeg)
此时我们查看请求日志:
![14c7bded98bc845b9f132593210c7247.png](https://i-blog.csdnimg.cn/blog_migrate/a46f535588a93d34e952af512e726fce.jpeg)
可以看见此时已经成功将 cookie01、cookie02 添加到了缓存中,我们现在去除参数,在观察下运行结果:
![a330fe9a6a001954d5297a7cb6981760.png](https://i-blog.csdnimg.cn/blog_migrate/f22104cab16d6ed203d36d0b235a4204.jpeg)
可见依然包含 cookie 信息;
【2】第二种方式:将 cookie 信息直接添加到 postman 的 Cookies 管理中;
首先我们先从请求日志中获取到此时接口的 cookie 信息;
Cookie: cookie01=%E6%88%91%E6%98%AF%E7%BC%93%E5%AD%9801;
cookie02=%E6%88%91%E6%98%AF%E7%BC%93%E5%AD%9802;
sails.sid=s%3ADd7_akJx0F8D_w2ivm8CHmgugj_oBh2c.muuv72zdbXzZRiIPg4dwJD%2F3MlA5LroZAAmsLTdOw3g
然后清除掉此时的缓存信息
![cde9819e73a3f0169a1f9f088033e419.png](https://i-blog.csdnimg.cn/blog_migrate/78977fbc6cb544e7e389869ab77b791d.jpeg)
我们在 postman 的 Cookies 管理中以键值对的样式添加 cookie01、cookie02、sails.sid ;
![20784c4db1b7e4f01ea0e75f079cd99d.png](https://i-blog.csdnimg.cn/blog_migrate/98edaee482d658bda8041ca01888397a.jpeg)
![94cd36edb88fee76aa553a41cce6c05a.png](https://i-blog.csdnimg.cn/blog_migrate/25f20f09002b1ef90152e780149f58af.jpeg)
添加完成,点击 Save 进行保存,此时在访问该服务可以看到此时缓存信息成功加入
![843ef1bd366bbda590fe9b0878930cd3.png](https://i-blog.csdnimg.cn/blog_migrate/3d2d71bd1c6e4d41ef8d5818876603ae.jpeg)
- 通过编码获取响应信息头域中的 cookie
有些时候我们可能还需要获取响应头域信息中的 cookie;
![82b6723c3608593bb2aa5e31d53e11ef.png](https://i-blog.csdnimg.cn/blog_migrate/8d7eabc30114b1e1311b196664455e32.jpeg)
我们只需在 Tests 处加入如下代码即可:
var cookie = postman.getResponseHeader("Set-Cookie");
当然这行代码通过变更对应的 key 可以获取任意的响应信息中的头域信息。
我们运行下查看此时的运行结果:
![13b3d1b75e53102d03528d272676d206.png](https://i-blog.csdnimg.cn/blog_migrate/8a41072b834376b259aa9d71e8752bd1.jpeg)
![da66ab71d5ca1f6ddb6938724941cb5a.png](https://i-blog.csdnimg.cn/blog_migrate/3391054d01d2f3f830d84a5918531ea7.jpeg)
可见二者一致;
- 总结
需要掌握 postman 中添加 cookie 信息的两种方式,另外还需要掌握 cookie 的使用场景;
更多交流~可以来微信搜索 "海哥说测试" 与我进行交流~
![bdcc34dcdd9b0b10818450d53399d4f0.png](https://i-blog.csdnimg.cn/blog_migrate/90904e7b193db8f5d91083e93f08197e.png)