问题描述
我正在尝试使用Java中的Webclient编写API调用。目前,我在查找有关如何向Webclient添加证书的文档方面遇到麻烦。我既要提供PEM格式的CA证书文件,又要提供其中将提供主机,CRT文件,密钥文件和密码短语的客户端证书。我已经在邮递员中使用了此设置,但是我想将其转移到Java应用程序中。下面是我的代码。
Gson gson = new Gson();
LinkedHashMap<String,Object> reqBody
= new LinkedHashMap<String,Object>();
LinkedHashMap<String,String> variables
= new LinkedHashMap<String,String>();
reqBody.put("variables",variables);
WebClient webClient = WebClient.builder()
.baseUrl("sampleurl.com")
.defaultHeader(HttpHeaders.USER_AGENT,"Spring 5 WebClient")
.defaultHeader(HttpHeaders.ACCEPT,"application/json")
.defaultHeader(HttpHeaders.CONTENT_TYPE,"application/json")
.build();
return webClient.post()
.uri("/api")
.headers(headers -> headers.setBasicAuth("userName","password"))
.body(Mono.just(reqBody),LinkedHashMap.class)//if directly putting the map doesn't work
//can also convert to json string then to monoflux
.retrieve()
.bodyToMono(String.class);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)