![](/img/trans.png)
[英]REST API, can't put “%20” or “+” in my URL for spaces. The URL isn't being fetched
[英]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
我不确定jql
、 project
和issuetype
是否是单独的参数,或者整个字符串是否是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.