与邮递员发送cookie


73

我阅读了与邮递员一起使用cookie发送请求的手册:

由于打包的应用程序与浏览器分开在沙箱中运行,因此它无法访问在浏览器中设置的cookie。使用Interceptor扩展也可以克服此限制。邮递员通过拦截器路由所有请求,然后拦截器使用浏览器上下文发送请求。在浏览器中设置的Cookie会自动附加到您的请求中。阅读有关Interceptor的原始博客文章。

启用拦截器后,您还可以从Postman发送cookie。只需设置“ Cookie”标头,就会将Cookie与请求一起发送。您还可以访问返回响应时可用的cookie。查看博客文章了解更多

所以我下载了谷歌浏览器的拦截器,并启用了它。

另外,我在邮递员中添加以下内容: Cookie JSESSIONID=daczcz36789

当我查看网络时,我注意到未发送Cookie。

我做错了什么?


非常有用的相关帖子在这里
RBT

已弃用Postman Chrome应用,而推荐使用本机应用。因此,最好使用本机应用程序(代替Chrome应用程序),该应用程序如我的回答中所述直接支持拦截cookie 。使用本机应用程序时,您将不需要其他插件(例如拦截器)来检查Cookie。
RBT

这回答了你的问题了吗?如何在Postman中存储和重用cookie?
儿子宣阮

Answers:


50

您可以分别在浏览器和Postman中启用Interceptor。对于发送/接收cookie,您应该在Postman中启用Interceptor。因此,如果仅在浏览器中启用拦截器,则它将不起作用。实际上,您根本不需要在浏览器中启用Interceptor-如果您不想向邮递员历史记录中添加不必要的请求。


1
我该如何在我的代码中模仿这一点。我想发送和接收Cookie。否则,服务器无法验证我的身份。
Sagar Nayak

我遇到了同样的问题,关闭拦截器然后再打开对我没有帮助。邮递员的支持也没有帮助。他们告诉我使用Postman的桌面版本,它给了我相同的答复。当我单击“ Cookies”下时,我确实看到了我的网站发布的cookie,但是如果我在Fiddler中检查了我的API调用,则看不到我的网站发布的cookie。
山姆

@SagarNayak是否在代码中找到了实现此目的的任何方法?
杰·帕特尔

@JayPatel我没找到任何解决方案。我更改了该用例的流程并加以解决。
Sagar Nayak

好吧,我想我也需要做类似的事情!
杰·帕特尔

45

我使用邮递员chrome扩展名,直到不赞成使用。Chrome扩展程序比本地邮递员应用程序还难用且功能强大。因此,使用chrome扩展变得不太方便。我发现了下一种方法:

  1. 将chrome /其他浏览器中的任何请求复制为CURL请求(图片1)
  2. 导入邮递员复制的请求(图片2)
  3. 将导入的请求保存在邮递员的列表中

复制卷曲请求 图片1

在此处输入图片说明 图片2


1
很好地解释/说明了答案<3
操作员

2
这省去了使用拦截器的麻烦
Sajith K

抱歉,为什么在标题上设置了cookie?我在这里想念什么吗?
佛朗哥·吉尔

1
@FrancoGil,这是通过CURL请求发送cookie的常用方法
Vaha

这会从复制的curl中自动在邮递员中创建标题的信息。好答案!
stefancho

36

以这种方式启用拦截器

基本上是chrome插件。安装扩展后,您还需要确保从chrome端启用了扩展。

在此处输入图片说明


16

您应该手动启用拦截器扩展员,它位于邮递员窗口的右上方。有几个按钮,找到拦截器按钮并启用它,然后您可以在请求标头中设置Cookie字段后发送Cookie。


16

基于上述@RBT的答案,我尝试了Postman本地应用程序,并希望提供一些其他详细信息。

在最新的邮递员桌面应用程序中,您可以在最右侧找到cookie选项:

在此处输入图片说明

您可以看到本地主机的cookie(尽管该应用程序在本地运行,但这些cookie与chrome浏览器中的cookie链接在一起)。您也可以为特定域设置cookie。

在此处输入图片说明


4

Chrome的应用程序,包括邮差提到即将过时这里。现在,建议不要使用未与浏览器的沙盒环境分离的本机应用程序。

从功能页面报价:

本地应用独有的功能:

COOKIES:本地应用程序使您可以直接使用Cookie。与Chrome应用程序不同,不需要单独的扩展程序(拦截器)。

内置代理:本地应用程序带有内置代理,可用于捕获网络流量。

限制的标头:最新版本的本机应用程序可让您发送标头,例如Origin和User-Agent。这些在Chrome应用中受到限制。不要关注

REDIRECTS OPTION:本机应用程序中存在此选项,以防止自动重定向返回300系列响应的请求。以前,用户需要使用Interceptor扩展程序才能在Chrome应用程序中执行此操作。

菜单栏:本机应用程序不是由镀铬的标准菜单栏的限制。

POSTMAN CONSOLE:最新版本的本机应用程序具有内置控制台,可让您查看API调用的网络请求详细信息。

因此,从此处安装本机Postman应用程序后您不必再去寻找拦截器应用程序之类的其他先决条件,只需检查您的cookie。安装本地邮递员应用程序后,我无需更改单个设置,并且所有我的cookie都可以在Cookies选项卡中看到,如下所示:

在此处输入图片说明


这挽救了我的一天。
tryToLearn

3

我在使用OSX时遇到问题。我遵循了邮递员提供的说明和此处的建议,但仍未设置cookie。

但是,上面的帖子说“因此,如果仅在浏览器中启用拦截器,它将无法工作”,这使我意识到可以在浏览器以及Postman本身中启用拦截器。我想尝试在浏览器中打开它,看看是否有帮助,确实如此。然后,我在浏览器中将其关闭,但仍然可以使用。

因此,如果您在使用它时遇到问题,建议您至少尝试在浏览器中将其打开一次,因为对我而言,这似乎使它生效了。我认为您仍然需要在Postman中将其打开。


1
在OS X 10.11.6上,在Chrome浏览器上切换拦截器插件是为我完成的。非常感谢!
保罗·科达

我只是想确认一下,打开Chrome的拦截器插件,然后再关闭,这对OSX 10.11.6也是有效的。
carbocation

2

即使切换后也无法正常工作。添加邮递员插件后,我关闭并重新启动了浏览器,登录该网站以重新生成Cookie,然后对我有用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.