Firefoxのアドオンを使用すれば、Redmine REST API のチケット登録を試すことができます。
この記事では、アドオンの「Poster」を使用して、実際にチケットを登録します。
このアドオンは、アドオンマネージャからインストールできます。
インストール後は、アドオンを有効にするため再起動が必要です。
Redmine側の準備
RESTを有効にする
RESTを使用できるように、先ずはRedmineを設定しましょう。
システム管理者でRedmineにログインして、設定の「API」タブを開き、「RESTによるWebサービスを有効にする」にチェックを入れます。
Redmine3.2.2では「API」タブですが、バージョンによって「認証」タブの場合があります。
APIアクセスキーを取得する
ユーザーの個人設定画面からAPIアクセスキーを取得します。
後で使用するので、メモ帳などにペーストしておいてください。
Redmine側の準備は以上です。
Poster の起動方法
インストールした「Poster」を起動します。FireFoxのメニューバーのツールから「Poster」をクリックしてください。
入力する内容
今回はチケット登録ですので、URL には次のように入力します。
URL形式
<RedmineのURL>/issues.xml?format=xml&key=<APIアクセスキー>
URLサンプル
http://localhost/redmine/issues.xml?format=xml&key=2dd799678e009a9105915073557f9865d9d71fe7
Content Type には、「application/xml」を指定します。
Content には、登録したいチケットの内容を「XML形式」で入力します。XMLの詳細は、Redmine公式サイトで解説されていますので、ご参考にしてください。
今回は、次のような内容を、チケットとして登録してみます。
<?xml version="1.0"?> <issue> <tracker_id>1</tracker_id> <project_id>1</project_id> <subject>POSTで作成したチケットです</subject> <description>うまく登録できるかな</description> <custom_fields type="array"> <custom_field id="1"><value>カスタムフィールドにも登録</value></custom_field> <custom_field id="2"><value>日付なら次のように入力</value></custom_field> <custom_field id="3"><value>2016-05-24</value></custom_field> </custom_fields> </issue>
プロジェクトやトラッカー、カスタムフィールドの「id」は、MySQL(Redmine)に接続すれば簡単に調べることができます。方法を紹介していますので、ご参考にしてください。
またXMLでは、タグ表記などと被るため使用できない文字があります。それらは、エンティティ参照による表記に変換して入力する必要がありますので、ご注意ください。
※無意識に使ってしまい、エラーになることがよくあります(^^;)
文字 | エンティティ参照による表記 |
---|---|
< (右大なり) | < |
> (左大なり) | > |
& (アンパーサント) | & |
” (ダブルクォーテーション) | " |
‘ (シングルクォーテーション) | ' |
処理の要求
すべてを入力したら、[POST]ボタンをクリックしてみましょう。
次のような画面が表示されれば、処理は成功です。
確認のため、登録したチケットをRedmineで表示してみました。
おわりに
ExcelやAccessのVBAでRESTを使った開発をする際、送信内容や戻り値などの確認に便利です。
最後までご覧いただき、ありがとうございます。