使用以前版本的Paw中的cookie身份验证的路由不再适用于新版本

时间:2014-12-16 15:45:51

标签: paw-app

我的路由使用另一条路由设置的身份验证Cookie。我创建它是这样的: cookie authenticated route

此方法在新版本中不再有效。 Paw抱怨来自Authenticate请求的响应中没有set-cookie标头。

这似乎是因为Paw现在采用cookie并以不同于其他标头的方式处理它们。我喜欢这种方法,因为它应该使这种认证更容易,但不幸的是,它不像我期望的那样工作。

以下是我配置较新请求的方法: cookie authenticated request configured using the cookie jar

所以,我已经将cookie标头设置为Response Cookies动态值,我相信它应该传递之前设置的cookie。我认为我应该从下拉列表中选择Authenticate请求(因为它是来自此请求的实际设置cookie的响应,但是如果我这样做,cookie值就会消失。相反,我将请求值保留为Current Request因为这似乎包含正确的值。

我也注意到Automatically send cookies设置,我认为这可能是一个简单的解决方案。我从我的请求中删除了手动cookie标题,这样就检查了希望它可以自动发送来自cookie jar的任何cookie以及请求,但这似乎也不起作用。无论我尝试什么,我的请求都无法通过身份验证产生预期的结果。

Automatically send cookies setting

您能帮助我了解如何配置这些请求,以便我可以继续使用Paw来测试经过会话验证的路由吗?

2 个答案:

答案 0 :(得分:2)

以下是一些让您了解Cookie如何在Paw中工作的内容(从2.1版开始):

<强> 1。 Cookie存储在Jars中

为了允许用户保留多个同步会话,cookie存储在jar中,因此您可以轻松地在会话(jars)之间切换。

只有当匹配请求(主机名,路径,安全等)时,才会发送存储在jar中的Cookie。

<强> 2。默认情况下会发送来自jar的Cookie,除非Cookie标题被覆盖

如果您手动设置Cookie标题,则存储在广告系列中的Cookie不会被发送。 显然,除非自动发送Cookies 被禁用。

第3。先前使用&#34;响应标题&#34; 是hacky。使用响应Cookie

实际上,Set-Cookie(对于响应)和Cookie(对于请求)具有不同的语法。因此,您无法发送Set-Cookie的原始值(即使它在大多数情况下似乎有效)。

您提到的新响应Cookie 动态值具有此目的:发送回特定请求设置的Cookie。

现在,在您的情况下,我会一直使用 Response Cookies 动态值。由于您只有1个请求进行身份验证/ cookie设置,因此它可能是最容易处理的。此外,可以选中忽略域名,路径,安全和日期,以确保即使您切换主机(或其他内容)也始终发送您的Cookie。

Send cookies from a specific request in Paw

答案 1 :(得分:1)

删除cookie jar中的cookie并再次点击认证端点似乎解决了这个问题。不确定原因,但现在似乎正在手动发送cookie或使用Automatically send cookies设置。