You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将可信外部域名加入RSpec测试白名单?

在RSpec中允许特定域名的真实HTTP请求(白名单配置)

RSpec本身并不直接处理外部HTTP请求的拦截与放行,这个功能通常由WebMock(RSpec生态中常用的HTTP请求模拟库)提供。针对你的需求,可以通过WebMock的配置将可信域名加入白名单,允许其发送真实请求,无需逐一stub。

具体配置步骤:

  • 在RSpec的配置文件(如spec/spec_helper.rb或spec/rails_helper.rb)中添加以下代码,指定允许的域名:
    WebMock.disable_net_connect!(allow: "foo-box.s3.amazonaws.com")
    
  • 若需要允许多个可信域名,可传入数组:
    WebMock.disable_net_connect!(allow: ["foo-box.s3.amazonaws.com", "other-trusted-domain.s3.amazonaws.com"])
    
  • 如果同时需要允许本地服务的请求(如测试环境的API),可以加上allow_localhost: true参数:
    WebMock.disable_net_connect!(allow: "foo-box.s3.amazonaws.com", allow_localhost: true)
    

配置完成后,所有指向foo-box.s3.amazonaws.com的请求会直接发送真实请求,其他未在白名单中的外部域名请求仍会被WebMock拦截,需要通过stub_request模拟响应。

内容的提问来源于stack exchange,提问作者dnnypck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 09:15:33