利用 Postman Chrome app 和 Chrome 浏览器共享网站 cookie

背景

做为一个Web工程师,最熟悉的平常工做莫过于后台接口开发与联调测试,而在接口测试上,你们最喜好的工具清单里,必然少不了 Postman 这一利器。然而,有时接口测试须要准备好登陆态,或者其余状态数据,而这些数据每每就存在浏览器 Cookie 里边。结合本文介绍的工具,即可以无缝在 Postman Chrome app (为何强调是 Postman Chrome app,文章末尾会说明)和 Chrome 浏览器之间共享 Cookie,而这个共享过程对用户是透明的。git

工具清单

如下工具请自行安装,我只贴下官方的软件界面截图。github

  1. Chrome 浏览器
  2. Postman Chrome app
    clipboard.png
  3. Postman Interceptor
    clipboard.png

使用步骤

如下咱们以 Github 网站为例,演示下如何实现 Cookie 共享。web

1、确认 Postman Interceptor 插件安装成功(如图所示)

clipboard.png

2、启动 Postman,在右上角的卫星小图标那里开启 Chrome Interceptor

clipboard.png

3、在 Chrome 浏览器里正常登录 GitHub 网站(此步骤没什么好演示的 ╭(╯^╰)╮)

4、在 Postman Chrome app 中直接模拟请求通知接口

接口路径:https://github.com/notificati...
clipboard.png
也就是说,这个时候,咱们虽然没有对 Postman 作特殊的 Cookie 设置,可是它的请求的登陆态都被服务器验证经过了,cookie 共享成功!chrome

假如这个时候退出浏览器的登陆态呢?

咱们先从 GitHub 退出登陆,仍是刚才的请求,这个时候的响应是:
clipboard.png
是的,由于 Chrome 里已经退出登陆,因此 Postman 这边也天然失去登陆态了,说明两边 Cookie 是同步的。windows

Postman Interceptor 的 Bonus

clipboard.png
Postman Interceptor 还有一点比较爽的是,它的 Request Capture 支持捕捉 Chrome 浏览器里的请求记录,而且自动同步到 Postman Chrome app 里边,这样的话,咱们就能够方便直接在 Postman 里获取到咱们须要测试的网络请求,而不是一个一个本身填写参数之类的了。
clipboard.pngapi

缺陷

遗憾的是,按照官方说明,如今 Postman Interceptor 的这个Cookie 共享还不能支持独立安装的桌面版(从官方下载而不是从 Chrome 应用市场下载)的 Postman Desktop,因此,若是你但愿使用上述功能,你只能安装回 Postman Chrome app,而这个版本相对桌面版,功能天然也会少。浏览器

Note: Interceptor feature is supported only in our Postman Chrome Apps and is not available in Postman Desktop Apps at the moment.

另外一方面,考虑到 Chrome 浏览器将会在不久的未来停掉 Chrome apps 的支持,可能这个方案也撑不了过久。服务器

若是你真心但愿 Postman 将上述功能加到他们的桌面版里,能够到他们的官方GitHub issues去请愿,他们正在收集你们的意见。可是……这个请愿帖已经两年多了,而就在我表达请求以前的几个小时到几天以前,都有人陆续去请愿,因此也不知道会不会真的如愿了。cookie

总结

对于确实须要获取网站 cookie 才能完成接口测试的场景,上述方法有必定的便利性,也才有必要使用个人方法,其余场景的接口测试,大家就无视我吧。网络

参考连接

  1. Postman: Using the Interceptor to read and write cookies
  2. Postman Help Center: How do I access Chrome's cookies in Postman's Chrome App?
  3. Postman Learning Center: Interceptor extension
  4. Google is phasing out Chrome apps for Mac and Windows
相关文章
相关标签/搜索