如何使用Spring Boot Web客户端发布对内容类型应用程序表单数据的请求/x-www-form-urlencode [英] How to post request with spring boot web-client for Form data for content type application/x-www-form-urlencoded

查看:0
本文介绍了如何使用Spring Boot Web客户端发布对内容类型应用程序表单数据的请求/x-www-form-urlencode的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用Spring Bootwebclient发布内容类型请求application/x-www-form-urlencoded 内容类型为`application/x-www-form-urlencode‘的cURL请求示例

--header 'Content-Type: application/x-www-form-urlencoded' 
--data-urlencode 'username=XXXX' 
--data-urlencode 'password=XXXX'

如何使用Web客户端发送相同的请求?

推荐答案

我们可以使用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();
    

这篇关于如何使用Spring Boot Web客户端发布对内容类型应用程序表单数据的请求/x-www-form-urlencode的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆