restclient.elというものがありまして、
テキストファイルにAPI呼び出しを列挙しておくと、C-c C-c
などで実行できます。
JSONかXMLならレスポンスをpretty-printしてくれます。
postリクエストの例。バッファにこんな風に書きます。(GitHubの例より)
POST https://jira.atlassian.com/rest/api/2/search Content-Type: application/json { "jql": "project = HSP", "startAt": 0, "maxResults": 15, "fields": [ "summary", "status", "assignee" ] }
POST https://...
の部分でC-c C-c
すると別のウィンドウにレスポンスが表示されます。
Emacs24.4から搭載された json-pretty-print
をレスポンスの表示に使っているのですが、手元では古いjson.elがload-pathの上位にいて、利用できなくて一瞬困りました。
古いjson.elを消して、Emacs.appに含まれる新しいjson.elをロードしたらうまく動きました。
ちなみに、localhost
へのアクセスは、url.elのバグで落ちるので、127.0.0.1
としてアクセスしないといけません。
HTTP GET http://localhost:8080/hogehoge Headers:[nil] Body:[] Contacting host: localhost:8080 error in process sentinel: if: peculiar error: "failed with code 22 ", :host, "localhost", :service, 8080
あと、マルチバイト文字列を送信するときは、JSONをリージョン選択し、M-x json-pretty-print
して "\u307b\u3052"
(数値参照?)みたいな形式にする必要があります。