Rumah > Soal Jawab > teks badan
Saya ada curl php
permintaan seperti di bawah
$curlInit = curl_init(); curl_setopt($curlInit, CURLOPT_URL, 'https://www.myurl.com/'); curl_setopt($curlInit, CURLOPT_POST, 1); curl_setopt($curlInit, CURLOPT_POSTFIELDS, http_build_query( array( 'action' => 'GetSearchDetails', 'username' => 'lambistic', 'password' => 'lambistic######', 'responsetype' => 'json', ) ) ); curl_setopt($curlInit, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($curlInit); curl_close($curlInit);
Apa yang saya ingin capai ialah melakukan operasi yang sama dalam springboot java menggunakan web client
dan di bawah ialah cara saya cuba melakukannya menggunakan klien web
public Mono<SearchDetailsResponse> sendSearchDetailsRequest() { return webClient.post() .uri("https://www.myurl.com/") .header("Content-Type", "application/json") .headers(httpHeaders -> { httpHeaders.set("username", "lambistic"); httpHeaders.set("password", "lambistic######"); }) .retrieve() .bodyToMono(SearchDetailsResponse.class); }
Saya tidak mendapat sebarang balasan, pelanggan web saya mungkin melakukan sesuatu yang salah
P粉5101277412024-02-18 15:02:36
http_build_query menambah parameter sebagai rentetan pertanyaan. Dalam klien web anda, anda menambahkannya sebagai pengepala. Saya rasa awak kena ubah ini :
webClient .post() .uri("https://www.myurl.com?action=GetSearchDetails&username=lambistic&password=lambistic#####&responsetype=json") .retrieve() .bodyToMono(SearchDetailsResponse.class);