【问题标题】:Postman inconsistent behaviour with cURL request邮递员与 cURL 请求的行为不一致
【发布时间】:2018-01-31 19:53:36
【问题描述】:

我从 Swagger Editor 以 JSON 格式下载了以下 API: 把http://10.37.64.243/m2m/fim/items/fim:device:manager/operations/getAllDeviceTypes?exclude={{排除}} 排除环境变量设置为:href,metadata,name,arguments

名义上的使用需要基本身份验证,在这种情况下它可以工作,并且我得到一个具有预期结果的 JSON 正文。它在 Postman 中正常工作(所以我认为我的导入是正确的)

如果没有提供身份验证:

  • 在 Swagger 编辑器中:名义行为,请求被拒绝,错误代码为 401

  • 在 Postman : UNEXPECTED 行为中,我最终得到状态码 200,它返回的响应正文与我通过身份验证时得到的响应正文相同

  • 如果我从 Postman 生成 cURL 代码 sn-p 并从 Postman: 名义行为中启动它,我得到的错误与我在 Swagger 编辑器中得到的错误相同(预期的错误)

为什么 Postman 的行为与 cURL 请求不同? 我可能做错了什么,但我不知道是什么

感谢您的帮助

亚历山大

【问题讨论】:

  • 这是一个上下文问题,因为当我退出然后登录时问题没有出现。但是,如果我使用身份验证进行测试,我将无法再使用无身份验证进行测试。玩收藏时这是一个真正的问题:(

标签: postman


【解决方案1】:

我终于发现服务器返回了一个保存身份验证验证的cookie。因此,经过有效的身份验证后,无论是什么请求(无论是否经过身份验证)都将被视为已通过身份验证。

很遗憾,解决该问题的唯一方法是通过“管理 cookie”窗口手动删除 cookie。 Postman 没有实现删除它的函数(即使通过 pm.cookies 和 pm.cookies.clear() 函数)。

Postman 开发人员知道这一点,但没有安排此功能...

编辑:此处遵循该功能https://github.com/postmanlabs/postman-app-support/issues/3312

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-27
    • 1970-01-01
    • 1970-01-01
    • 2017-12-06
    • 2017-06-17
    • 2018-08-18
    • 2016-10-23
    相关资源
    最近更新 更多