ruby-on-rails - 在 Rails 中模拟网络响应

标签 ruby-on-rails http mocking response

我们正在创建一个网络应用程序,它将与另一个服务的 API 通信以提取数据等。

问题是 API 没有构建,但是我们使用 JSON 格式来实现 API 时返回的内容。 在实现 API 之前,如何模拟任何 GET 响应?我们编写了代码来使用读取示例 JSON 的加载方法来处理请求。我想要做的是使用一个 gem,例如 WebMock,以在生产中按计划调用请求,但拦截它并将示例 JSON 作为响应传回。

在测试中有很多这样的例子,但我找不到任何可以在开发模式下运行的例子。

最佳答案

您可以在 config/initializers 中添加一个文件:

if Rails.env.development?
  stub_request(:post, "www.example.com").to_return(:body => "yourjson")
end

这对你有用吗?

关于ruby-on-rails - 在 Rails 中模拟网络响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9918948/

相关文章:

ruby-on-rails - 事情在 sidekiq 中排队但没有在 heroku 中执行

java - Spring Framework MVC 中的 "Webpage has expired"

java - 如何在 java 中制定 curl -XHEAD 请求

ruby-on-rails - 如何从另一个应用程序向 Ruby on Rails 发送 http 请求?

c# - 如何使用 NSubstitue 框架从 Controller 类模拟基方法

python - 在输入提示符下测试 python stdout

ruby-on-rails - 我在 ajax 返回时收到 406 错误

ruby-on-rails - 如何简化大条件

ruby-on-rails - rails 5 : Preventing access to/admin pages based on IP address

javascript - Angular ngMock $httpBackend : split mocks into multiple files