如何在Postman中删除会话cookie?

时间:2015-02-03 17:39:17

标签: postman

我正在Postman中测试我的API,但我无法模拟注销

如果我打电话删除会话cookie, postman request
之后会话cookie 仍然存在,我仍然可以访问需要身份验证的路由。

服务器上的路由处理程序是:

  server.route({
    method: 'DELETE',
    path: '/sessions/_current',
    handler: function(req, reply){
      req.auth.session.clear();
      reply({}).code(204);
    }
  });

这是带有Hapi的Node.js,但它无所谓。

有没有办法在邮递员中删除所有Cookie 或手动某些Cookie

11 个答案:

答案 0 :(得分:76)

Postman 4.0.5在发送按钮下方有一个名为 Manage Cookies 的功能,该功能可以单独管理Chrome。

enter image description here

答案 1 :(得分:10)

正如@markus所说,使用“Cookie管理器”并删除co​​okie。 enter image description here

如果您想了解如何在邮递员中设置销毁Cookie,您应该查看Postman Echo服务https://docs.postman-echo.com/

在那里,您将找到有关如何设置,获取和删除这些cookie的完整说明。

检查:https://docs.postman-echo.com/#3de3b135-b3cc-3a68-ba27-b6d373e03c8c

试一试。

答案 2 :(得分:8)

原生邮递员应用程序中有“Cookie管理器”,所以这根本不是问题,

但在Chrome的Postman扩展程序中没有

所以解决方案只是在安装本机邮递员

laravel-goutte

答案 3 :(得分:6)

是否启用了邮差拦截器?切换它将通过Chrome浏览器路由所有请求和响应。

拦截器 - https://www.getpostman.com/docs/capture Cookie文档 - http://blog.getpostman.com/index.php/2014/11/28/using-the-interceptor-to-read-and-write-cookies/

答案 4 :(得分:3)

请注意,此答案仅适用于独立邮递员用户界面,而不适用于Chrome的邮递员应用程序/插件。

如何清除Postman中的缓存(例如,在请求令牌时需要再次登录):

  • 导航至View:Show DevTools
  • 导航到“应用程序”选项卡,然后导航到左侧菜单中的“清除存储”视图
  • 取消选择除缓存存储以外的所有选项,然后单击“清除网站数据”
  • 重启Postman
  • 现在,在申请新令牌时,系统会提示您再次登录

答案 5 :(得分:1)

自2019/08以来,新版本的邮递员应用程序可以在请求前或测试脚本中以编程方式进行操作

在此处查看更多示例:Delete cookies programmatically · Issue #3312 · postmanlabs/postman-app-support

清除所有cookie

const jar = pm.cookies.jar();

jar.clear(pm.request.url, function (error) {
  // error - <Error>
});

获取所有cookie

const jar = pm.cookies.jar();

jar.getAll('http://example.com', function (error, cookies) {
  // error - <Error>
  // cookies - <PostmanCookieList>
  // PostmanCookieList: https://www.postmanlabs.com/postman-collection/CookieList.html
});

获取特定的Cookie

const jar = pm.cookies.jar();

jar.get('http://example.com', 'token', function (error, value) {
  // error - <Error>
  // value - <String>
});

答案 6 :(得分:0)

你试过Clear Cache extension吗?试试看。它清除应用程序设置中提供的应用程序缓存,下载,文件系统,表单数据,历史记录,本地存储,密码等等。

更新:尝试此回答https://superuser.com/a/232794

我不确定在Postman中如何做到这一点。我曾经关闭整个浏览器并重置服务器以便再次进行身份验证。从未测试过注销,因为它是一个API服务。

答案 7 :(得分:0)

进入Chrome,右键单击 - &gt;检查元素。转到标签主动跟踪资源,如果还没有。现在左侧边栏有点向下,直到您看到“Cookies”,点击您的域名下方并删除co​​okie只需右键单击它并“删除”

答案 8 :(得分:0)

您可以使用Postman拦截器。您可以通过此链接添加到Chrome扩展程序中:https://chrome.google.com/webstore/detail/postman-interceptor/aicmkgpgakddgnaphhhpliifpcfhicfo

这可以帮助您通过Postman应用程序发送使用浏览器cookie的请求。 它还可以发送通常受Chrome限制但对测试API至关重要的标头。

此外,您还可以通过橙色同步图标旁边的拦截器启用 And also you can enable by interceptor which is there beside the orange sync icon.

答案 9 :(得分:0)

我尝试清除chrome cookie以摆脱邮递员cookie,这是此处给出的答案之一。但这对我没有用。 我检查了邮递员版本,发现它是旧版本5.5.4。 因此,我只是尝试将Postman更新到最新版本7.3.4。 很酷,问题已解决!!

答案 10 :(得分:0)

我认为对于包含变量的URL,可以增强aaron的响应:

var sdk = require('postman-collection');      

const testURL=pm.environment.values.substitute(pm.request.url, null, false);

const objURL=new sdk.Url(testURL);

console.log("clearing cookies for: "+testURL);

const jar = pm.cookies.jar();

jar.clear(objURL, function (error) {
  // error - <Error>
  if(error)
  console.log("Error clearing cookies: "+error);
});