簡體   English   中英

使用WebTarget時指定原始查詢字符串

[英]Specify raw query string when using WebTarget

我正在處理一個大型現有項目,該項目利用javax.ws.rs.client.WebTarget與RESTful API進行通信。 該API是由第三方開發的,我對此無能為力。 我需要以以下格式發出請求:

https://end.point.url/endpoint/id?data

不幸的是,我不知道如何使用WebTarget來指定這樣的請求。 我嘗試使用path("endpoint/id?data") ,但這被轉換為endpoint/id%3Fdata ,我得到404。 我嘗試使用queryParam指定空值,這使我得到了endpoint/id?data= -這導致錯誤的必需參數data丟失

還有什么其他選擇? 用其他東西替換WebTarget是不可行的,因為這遍及整個大型項目。

首先,相關問題: Jersey客戶端的網址編碼問題

經過大量研究,似乎唯一的方法是在創建WebTarget時指定整個uri,如下所示:

Client client = ClientBuilder.newClient().register(authFeature);
WebTarget webTarget = client.target("https://end.point.url/endpoint/id?data")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM