将参数发布到http链接中

时间:2019-06-21 16:14:55

标签: java spring spring-boot spring-webflux

我想用webflux实现将参数发送到http链接的示例:

String convertedString = "key=value&key=value";

    Mono<String> transactionMono = Mono.just(convertedString);
            return client.post().uri("http://www.some_host.com/receive.php")
                    .header(HttpHeaders.USER_AGENT, "Mozilla/5.0")
                    .accept(MediaType.APPLICATION_XML)
                    // .contentType(MediaType.APPLICATION_XML)
                    .body(transactionMono, String.class)
                    .retrieve()
                    .bodyToMono(NotificationEchoResponse.class);

该请求应类似于:http://www.some_host.com/receive.php?key=value&key=value

实现此目标的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

您处在正确的轨道上。但是,参数不是正文的一部分,而是URI的一部分。

这是您的代码的外观:

String convertedString = "key=value&key=value";

return client.post().uri("http://www.some_host.com/receive.php?" + convertedString)
        .header(HttpHeaders.USER_AGENT, "Mozilla/5.0")
        .accept(MediaType.APPLICATION_XML)
        // .contentType(MediaType.APPLICATION_XML)
        .retrieve()
        .bodyToMono(NotificationEchoResponse.class);