2

jira で特定のプロジェクトのすべての問題を取得する必要があるという要件があるため、このために、GET 要求呼び出しを行う残りのクライアント クラスを持つコンソール アプリケーションを作成しました。テスト目的で、残りの API URL は次のとおりです。

" https://jira.atlassian.com/rest/api/latest/issue/JRA-9 "

この URL を使用して HttpWebRequest を作成し、json 形式の文字列で応答を取得します。現在、このjson文字列にはすべての問題固有の情報が含まれていますが、私の実際の要件は、プロジェクト固有の問題をすべて取得することです。

テスト目的でプロジェクト固有の URL を取得するかどうかを調べようとしましたが、そこから json の返信が返され、見つかっhttp://kelpie9:8081/rest/api/2/search?jql=project=QA+order+by+duedate&fields=id,keyたのですが、「リモート名を解決できませんでした: 'kelpie9'」というエラーが表示されます。

これで私を助けてもらえますか?`

4

1 に答える 1

6

JIRA の REST API は現在、 APIprojectとは別の ベースのクエリをサポートしていないようです。search

JQL を使用して、検索で特定のプロジェクトを指定できます。プロジェクト (たとえば、「JRA-9」の「JRA」) を知っていれば、そのすべての問題をすばやく検索できます。

作業結果:https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA

重要な注意事項の 1 つは、結果が実際の合計と実際に返されるものを返すことです。

"startAt":0,"maxResults":50,"total":30177

クエリ文字列変数をリクエストに追加して、より多くの (またはより少ない) 結果を取得できます。課題に関連するフィールドを制御して取得することもできます: https://jira.atlassian.com/rest/api/latest/search?jql=project=JRA&startAt=75&maxResults=75(リクエストが多いほど遅くなり、公開サーバーに大きな数でヒットするのはおそらく良くありません)。

POSTクエリを表す JSON オブジェクトを作成することもできます (リンクされたsearchドキュメントから少し調整されています)。

{"jql":"project = JRA","startAt":75,"maxResults":75,"fields":["id","key"]}

興味深いことに、JQL の一部として、任意のフィールドで結果を並べ替えることができます。プロジェクト名に「order by id」を追加するだけで、クエリ文字列またはed JSON 本文の「jql=JRA+order+by+id」のようになり"jql": "project = JRA order by id"ます。POST


注: 上記は、実際の質問に対する実際の回答です。ただし、文字通りの質問が「The remote name could not be resolve: 'kelpie9'」エラーの原因です。

彼らのドキュメントにはkelpie9、ポートで実行されている、内部でテストしているサーバー名の例が示されています8081。お使いのコンピュータは、kelpie9公開されていないため、 という名前のサーバー/マシンを認識していません。kelpie9JIRA サーバーのホスト名が内部的に使用されているもの、および使用しているポートに置き換えます8081(または、イントラネット サイトで JIRA を表示したときに表示されない場合は削除します。つまり、http の場合はポート 80、https の場合はポート 443 を意味します)。たとえば、多くの企業が"https://jira/". リンクの例を に置き換えますhttps://jira/rest/api/2/search?jql=project=QA+order+by+duedate&fields=id,key

于 2013-09-24T05:40:28.747 に答える