我有一个wiremock 独立服务器,它代理所有请求,即使响应已经保存在根目录中。
这是我的配置:
WireMockConfiguration wireMockConfiguration = new WireMockConfiguration()
.port(server.getPort())
.withRootDirectory("./mocks/" + server.getRootDir())
.notifier(new Slf4jNotifier(true));
mockServer = new WireMockServer(wireMockConfiguration);
这是我的存根映射配置,此代码仅在 application.properties 上的“代理模式”属性为 true 时运行。我的存根映射:
mockServer.loadMappingsUsing(stubMappings -> {
RequestPattern requestPattern = RequestPatternBuilder
.newRequestPattern(RequestMethod.ANY, WireMock.anyUrl())
.build();
ResponseDefinition responseDef = ResponseDefinitionBuilder
.responseDefinition()
.proxiedFrom("https://myProxyUrl.com")
.build();
StubMapping proxyBasedMapping = new StubMapping(requestPattern, responseDef);
proxyBasedMapping.setPriority(10);
stubMappings.addMapping(proxyBasedMapping);
});
如果我将“代理模式”设置为 false,它会返回保存的响应。
我想要的是代理未保存的请求并返回已保存的响应。
我错过了什么?
[更新]
服务器重启后返回保存的响应。可以在运行时保存并返回保存的响应吗?