簡體   English   中英

帶空格的 URL rest api 參數

[英]URL rest api parameter with spaces

我正在使用 JIRA 的其余 API 來檢索問題,同時過濾項目名稱和問題類型。

當我嘗試使用 API 調用時:

String url3 = "jiraURL/rest/api/2/search?jql=project=GB AND issuetype=Requirement&maxResults=1000";

有用!

但是當我嘗試:

  String url3 = jiraURL/rest/api/2/search?jql=project=GB AND issuetype=Product Risk&maxResults=1000";

我得到了HttpClientErrorException: 400 這意味着我的網址是錯誤的。 我認為錯誤在於問題類型這兩個詞之間有一個空格。

我已經試過用 + 代替空格,但這不起作用。 我的第一個電話工作得很好。 但我不知道如何解決第二個電話。

每個參數名稱和值都應進行 URL 編碼。 然后它們應該用一個分隔符('&' 或 ';')連接起來。 看着

...?jql=project=GB AND issuetype=Product Risk&maxResults=1000

我不確定jqlprojectissuetype是否是單獨的參數,或者整個字符串是否是jql的值。 如果是前者,空格應替換為其 URL 編碼形式(“%20”):

...?jql=&project=GB%20AND%20issuetype=Product%20Risk&maxResults=1000

如果是后者,“=”也應該是 URL 編碼的:

...?jql=project%3DGB%20AND%20issuetype%3DProduct%20Risk&maxResults=1000

你能試試嗎?

 try {
        String url3 = URLEncoder.encode("jiraURL/rest/api/2/search?jql=project=GB AND issuetype=Product Risk&maxResults=1000", "UTF-8");
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }

暫無
暫無

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

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