2013-11-22 40 views
0

所以,我有一個QueryParam,它可能有一個&符號,有沒有什麼方法可以覆蓋REST在解析URL時的默認行爲讓它接受&符號?功能標題是:有沒有什麼辦法可以在REST中接受帶有&符號的QueryParam

@GET 
@PATH("/{id}/") 
@Produces(MediaType.APPLICATION_JSON) 
public Response getCoverage(
    @PathParam(COVERAGE_ID_DEFAULT_VALUE) String id, 
    @QueryParam(PROFILE_PARAM_VALUE) List <string> profiles) 

我不知道是否有什麼辦法可以讓這個配置文件可以包含在它的一個符號的字符串。

我想我應該澄清一點,我不知道如何編碼參數,當我有一個用戶只需鍵入到他們的URL欄。

http://whatever.com/3/?ParamInQuestion=Matt&Jay

我不知道在哪裏的代碼,我可以攔截的URL來清潔符號。

+0

@vikingsteve:爲什麼不會有一個。爲什麼你不能google包含一個&符號的單詞,例如? –

+0

@JBNizet我的錯誤,我認爲他的意思是參數名稱,而不是價值。 – vikingsteve

回答

1

您只需確保&符號正確編碼。每個請求參數應系統地。例如,

查看<c:url><c:param> JSP標籤,以及URLEncoder類。

0

只要已正確轉義,您可以在查詢參數中包含任何內容。詳情請參閱URLEncoder

我相信,JAX RS或任何你使用的應該會自動解碼的值,所以你的情況getCoverage方法將收到解碼值。

或者你的問題實際上是關於傳遞多個值,所以你會得到一個值列表?

相關問題