[英]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.