无法为代理进行 Wiremock 存根:最终 HttpHost proxy = new HttpHost("zscaler.abc.com", 10068);

问题描述

我尝试通过以下方式用 mockito 存根,但由于代理它无法正常工作,但在删除代理后它正在工作

mockito 存根(下面的代码在没有代理的情况下工作):

stubFor(post ("/abcBox-uat/abc-wsdl")

        .willReturn(aResponse()

            .proxiedFrom("http://zscaler.abc.com:10068")

            .withStatus ( 200 )

            .withHeader("Content-Type","text/xml; charset=utf-8")

            .withBodyFile("xml/" + "fqe-res.xml")
        )
    );

要存根的代码

@豆 public webservicetemplate webservicetemplateFlx() 抛出 SOAPException {

    //Setup proxy
    final HttpClientBuilder builder;
    builder = HttpClientBuilder.create();
    builder.addInterceptorFirst(new HttpComponentsMessageSender.RemoveSoapHeadersInterceptor());
    final HttpHost proxy = new HttpHost("zscaler.abc.com",10068);
    builder.setProxy(proxy);

    final CloseableHttpClient httpClient = builder.build();
    final HttpComponentsMessageSender messageSender = new HttpComponentsMessageSender(httpClient);

    final webservicetemplate webservicetemplate = new webservicetemplate(this.saajSoapMessageFactoryFlx());
    webservicetemplate.setDefaultUri(String.format("%s://%s",this.fareLogixRetrievalClientConfigHolder.getProtocol(),this.fareLogixRetrievalClientConfigHolder.getServiceEndpoint()));
    webservicetemplate.setMessageSender(messageSender);
    webservicetemplate.setMarshaller(this.jaxb2MarshallerFlx());
    webservicetemplate.setUnmarshaller(this.jaxb2UnMarshallerFlx());
    return webservicetemplate;
}

能够在删除代理后存根此代码

我收到 500 错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)