spring-boot - 如何使用 Spring Boot Web 客户端为内容类型 application/x-www-form-urlencoded 的表单数据发布请求
问题描述
如何使用 Spring Bootwebclient
发布application/x-www-form-urlencoded
内容类型为“application/x-www-form-urlencoded”的示例 curl 请求的请求
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'username=XXXX' \
--data-urlencode 'password=XXXX'
如何使用 webclient 发送相同的请求?
解决方案
我们可以BodyInserters.fromFormData
用于此目的
webClient client = WebClient.builder()
.baseUrl("SOME-BASE-URL")
.defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED_VALUE)
.build();
return client.post()
.uri("SOME-URI)
.body(BodyInserters.fromFormData("username", "SOME-USERNAME")
.with("password", "SONE-PASSWORD"))
.retrieve()
.bodyToFlux(SomeClass.class)
.onErrorMap(e -> new MyException("messahe",e))
.blockLast();
推荐阅读
- javascript - Web 应用程序中的多个光标 - 如何显示它们?
- r - R中数据帧的混洗块
- python - **减少** Spyder Python IDE 中界面字体的大小?
- c# - 等待后托管的 BackgroundService StopAsync 未执行
- asp.net - 批处理文件:等到多个 dotnet run 命令完成后再启动浏览器快捷方式
- javascript - 具有响应行为和比例缩放的两个图像
- html - ¿如何在没有服务器的情况下在 html 中添加 url 路径,单击 about 时。存在元名称?
- debugging - 使用 gdb 跟踪寄存器更改
- node.js - 如何将 React + Nodejs 应用程序部署到 Heroku,在我的服务器中,我将上传的图像保存到客户端的公共文件夹中,即 React?
- javascript - 映射数组并获取 refs.current 数组