如何删除 Postman 中的会话 cookie?

How to delete session cookie in Postman?

我正在 Postman 中测试我的 API,但在模拟 注销 时遇到问题。

如果我调用删除会话 cookie,
之后会话 cookie 仍然存在,我仍然能够访问需要身份验证的路由。

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

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

这是 Node.js 与 Hapi 但应该无关紧要。

有没有办法删除 Postman 中的所有 cookie手动删除某些 cookie

是否启用了 Postman 拦截器?切换它将通过 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/

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

更新:试试这个答案https://superuser.com/a/232794

我不确定在 Postman 中执行此操作的方法。我曾经关闭整个浏览器并重置服务器以再次进行身份验证。从未测试过注销,因为它是一项 API 服务。

在 chrome 浏览器中手动删除它会从 Postman 中删除 cookie。

在您的 chrome 浏览器中转到 chrome://settings/cookies

找到 cookie 并删除它

编辑: 根据下面的 Max890 评论(在我的 Google Chrome (ver 63) 版本中)现在是 chrome://settings/content/cookies 然后去"See all cookies and site data"

更新 Google Chrome 79.0.3945.88

chrome://settings/siteData?search=cookies

Postman 4.0.5 有一个名为 Manage Cookies 的功能,位于 Send 按钮下方,该按钮与 [=19= 分开管理 cookies ] 好像。

进入Chrome,右击->检查元素。转到选项卡主动跟踪资源,如果您还没有的话。现在左侧边栏向下直到您看到 "Cookies",单击您的域名下方并删除 cookie,只需右键单击它和 "Delete"

您可以使用 Postman interceptor.That 您可以通过 link:https://chrome.google.com/webstore/detail/postman-interceptor/aicmkgpgakddgnaphhhpliifpcfhicfo

添加到 chrome 扩展

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

你也可以通过橙色同步图标旁边的拦截器启用

正如@markus 所说,使用 "Cookie Manager" 并删除 cookie。

如果你想了解如何在 postman 中设置销毁 cookie,你应该检查 Postman Echo 服务 https://docs.postman-echo.com/

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

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

试一试。

请注意,此答案仅适用于 独立 Postman UI 而不适用于 Chrome.[=10= 的 Postman app/add-on ]

如何清除Postman中的缓存(比如请求token时需要重新登录):

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

Native Postman 应用程序中有 "Cookie manager",所以这根本不是问题,

但是在 Chrome 的 Postman 扩展中没有

所以解决方法就是安装原生 Postman

Postman for Linux, Mac & Windows

我尝试清除 chrome cookie 以摆脱邮递员 cookie,作为此处给出的答案之一。但这对我不起作用。 我检查了我的邮递员版本,发现它是一个旧版本 5.5.4。 所以我刚刚尝试将 Postman 更新到最新版本 7.3.4。 太棒了,问题已解决!!

自 2019/08 年以来,新版本的 postman 应用程序能够在预请求或测试脚本中以编程方式执行此操作

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

清除所有 cookies

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>
});

我认为可以针对包含变量的 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);
});