[英]REST API Testing - Postman behaving as different client after each request
我目前正在使用 Postman 来测试我的 REST API。 我使用Ruby-On-Rails
构建它,并使用devise_token_auth
来管理用户会话。 成功登录后,我的 API 将呈现一个client
、一个access-token
、一个token-type
(BEARER) 和一个Uid
。 每个要求用户登录并必须在标头上发送的请求都需要这些元素。
假设我正在使用 POST 创建一篇文章。 第一个 POST 成功并创建了文章,但是当我尝试创建另一篇文章时,我得到:
{
"errors": [
"Authorized users only."
]
}
我怀疑 Postman 在每次请求后都表现为不同的客户端,或者我的 API 在每次请求后为用户创建一个access-token
。
我终于设法解决了这个问题:
根据devise_token_auth gem 文档,每次客户端查询 API 时, access-token
更改。 因此,每当我想向我的 API 发送请求时,我都必须更新我的标头上的access-token
。
为了防止每次请求后更改access-token
,请将以下行添加到confing/initializers/devise_token_auth.rb
:
config.change_headers_on_each_request = false
我为这个链接的问题添加了一个也适用于这个问题的答案。 使用测试和预请求脚本,您可以让 Postman 在每次请求后自动保存和更新令牌。
这使您无需在 Rails 应用程序中设置config.change_headers_on_each_request = false
即可使用 Postman。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.