如何从服务器访问JIRA

How to access JIRA from server

我想从我们的服务器访问 JIRA。我在 Intranet 网络上并登录到我们的一台服务器。我想从 url 中获取所有问题的列表:https://ficcjira.xyz.com/browse/ABC 使用 REST API 调用。

我不太了解 curl 但我正在做这样的事情:

curl -D- -u username:password -x GET -H "Content-Type: application/json"  http://ficcjira.xyz.com/browse/ABC 

但是不行

具体怎么做?

以上c的结果响应url:

HTTP/1.1 302 Found
Location: https://ficcjira.xyz.com/browse/abc
Server: BigIP
Content-Length: 0
Cache-Control: proxy-revalidate
Proxy-Connection: Keep-Alive
Connection: Keep-Alive
Date: Fri, 10 Jun 2016 21:00:39 GMT

从您发布的代码中,我看到了一些错误:

  1. 你没有使用其余的 api URL,那应该是 URL
  2. 中有 "rest/api/2" 的东西
  3. 您没有正确调用 api - 您应该发送 JQL 搜索查询,而不仅仅是浏览。所以你的 URL 应该以“/search?jql=...”结尾“
  4. 您没有将 URL 括在双引号中,因此您的 curl 命令被转换为 2 个 unix 命令。

我建议您先在浏览器中尝试 URL,看看是否有结果:

http://ficcjira.xyz.com/rest/api/2/search?jql=project=ABC

如果这样做,您可以试试这个 curl 调用:

curl --globoff --insecure --silent -u username:password -X GET -H 'Content-Type: application/json' "http://ficcjira.xyz.com/rest/api/2/search?jql=project=ABC"

您可能会从我的博客中获得更多见解:http://javamemento.blogspot.no/2016/05/jira-confluence-3.html

如果您使用的是 curl,为什么还要用 java 标记?

如果您确实通过来自 Java 的 GET 调用来调用此 REST API,您应该使用 jersey 或 Spring 的 RestTemplate 来进行调用。

在我的博客上,您可以获得有关如何使用 RestTemplate 执行此操作的示例

http://javamemento.blogspot.no/2016/06/rest-api-calls-with-resttemplate.html

编辑:

如果您可以通过浏览器访问但不能通过 curl 访问,则可能您设置了代理。尝试使用 curl 调用的代理选项

--代理 <[协议://][用户:密码@]代理主机[:端口]>

当然,我希望您已经按照其他人的建议使用了 -L 选项?