Karate 将正向代理作为 HTTP 客户端的配置值暴露出来。在 karate-config.js 中,应在返回测试配置之前完成配置:

function fn() {
  karate.configure('proxy', {
    uri: 'http://proxy.example:8080',
    nonProxyHosts: ['localhost', '*.internal.example']
  });
  return { baseUrl: 'https://service.example' };
}

该功能的请求 URL 仍来自服务配置。uri 指定中间人;当被测服务允许此类路由时,HTTP 代理列表 为该值提供公共 HTTP 候选。

对于需要认证的代理,配置对象还接受 username 和 password。请从测试环境现有的凭证配置中获取它们。API 自身的授权是另一项请求层面的问题。

在不需要对象字段的场景中,也可以只使用单个代理 URL。当需要其账户或 nonProxyHosts 策略时,请使用对象形式。

让通配符模式适配 Karate 支持的绕过接口,而不要在未核实的情况下照搬其他客户端的 NO_PROXY 语法。

历史上关于在 karate-apache 与 karate-jersey 之间切换的建议指的是较旧的传输打包方式。若要诊断代理端点,请先选定已安装 Karate 版本的 API,再改动依赖。

相关文章