vcr 不知道如何处理此请求

jua*_*tas 5 ruby-on-rails cucumber google-oauth vcr

您好,我正在尝试使用带有标签的 vcr 来测试黄瓜的谷歌身份验证。

一切都很顺利,直到令牌过期。我认为当它过期时会发生这种情况

在此输入图像描述

但我有一个包含此内容的文件

http_interactions:
- request:
  method: post
  uri: https://accounts.google.com/o/oauth2/token
  body:
Run Code Online (Sandbox Code Playgroud)

如果我允许录像机记录新的请求,该磁带的内容就会发生变化。我不明白为什么,如果方法和 uri 不将 POST 更改为https://accounts.google.com/o/oauth2/token

我更改了标签来记录新剧集,现在测试正在通过......我一无所知。

我再次运行测试,现在当 POST 到 token url 时,我遇到了这个:

Completed 500 Internal Server Error in 449ms

Psych::BadAlias (Unknown alias: 70317249293120):
Run Code Online (Sandbox Code Playgroud)

23t*_*tux 3

也许您在帖子中包含一些参数,这些参数对于每个请求都是不同的?match_requests_on: [:method, VCR.request_matchers.uri_without_params("your_param")]如果是这样,您可以通过添加到 VCR 配置来告诉 VCR 忽略此参数。

深入分析您的请求,找出哪些参数发生了变化。您还可以告诉 VCR 匹配其他条件,请查看此处https://www.relishapp.com/vcr/vcr/v/2-4-0/docs/request-matching