vdeep

*

vdeepはプログラミング、IT、Web技術、ライフハックの事などなどを管理人okutaniがつぶやくブログです。月間13万PV〜。

Emacsでhttp.elを使ってGET・POST通信のテストを行う

      2017/01/31

LINEで送る
Pocket

emacs-httpel
こんにちは、okutani(@okutani_t)です。最近、サーバー通信周りをいじる機会があり、手軽にHTTP通信をおこなうツールをいろいろと調べていました。

私は普段Emacsを使っているので、Emacs上でHTTP通信が確認できたら便利だなー、と思っていたらありました。その名も「http.el」という代物。

HTTPリクエストをちょろっと書いて「C-c C-c」するだけで、とってもかんたんにGET・POSTリクエストができる便利な拡張機能です。

Emacsを使っている人で知らない人はいないであろう、るびきち先生の日刊Emacsで紹介されているパッケージですので間違いないはないですね。ちなみに、るびきち先生のhttp.el記事は下記リンクです。

参考emacs http.el : 【HTTPクライアント】バッファからHTTPリクエストを対話的に送る | MELPA Emacs Lisp Elisp パッケージ インストール 設定 使い方 | るびきち「日刊Emacs」

上記の記事もぜひ参考にしてみてください。

では、さっそくhttp.elを使ってGET・POST通信を行ってみましょう。

スポンサーリンク

http.elのインストール

http.elはmelpaにあります。package.elを利用してインストールします。

M-x package-list-packages

httpをインクリメンタルサーチ、「i」キー→「x」キーでインストール。

emacs-httpel

これでhttp.elがインストールできました。

http.elの利用方法

では、http.elの使い方をみていきましょう。今回は「httpbin.org」という、HTTP通信を手軽にチェックできる便利なサイトを利用していきます。

かんたんな使い方は、下記のhttpbin.orgで確認してみると良いです。

LINKhttpbin(1): HTTP Client Testing Service

emacs-httpel2

今回、GET・POST通信先をhttpbin.orgに設定して利用します。httpbin.orgについての説明はここでは特におこないませんので、興味がある人は適宜ぐぐってみてください。

ではEmacsで適当にバッファを開き、「M-x http-mode」としてhttp modeにしておきましょう。これでhttp.elを利用する準備は完了です。

まずはGETリクエストを送信してみます。

GET通信をおこなう方法

下記をバッファに記述します。

# -*- http -*-
# はコメント
# GETリクエストは単純に1行でOK
# 
## 自分のIPアドレスが返ってくるリクエスト
GET https://httpbin.org/ip

一行目の「# -*- http -*-」は、次開いたとき自動でhttp-modeにしてくれる記述です。

「GET https://httpbin.org/ip」では、httpbin.org/ipに対してGET通信を実行しています。httpbin.orgサイトで確認すると分かりますが、末尾にipをつけることで、自分自身のIPアドレスがreturnされます。

では、「C-c C-c」としてGETリクエストを送ってみましょう。

GET実行結果

実行すると、次のように結果が返ってきます。

emacs-httpel3

無事に自分自身のIPアドレスが返ってきていることが確認できました。かなりお手軽にGET通信をおこなうことができましたね。

次は、POST通信を試してみましょう。

POST通信をおこなう

POST通信の場合は、下記のとおりバッファに記述します。

# -*- http -*-
# 
## ヘッダーをつけてPOSTリクエスト
# ヘッダとデータの間には空行を入れる
POST https://httpbin.org/post?val=key
User-Agent: Emacs24
Content-Type: application/json

{
  "hoge": "piyo"
}

上記ではContent-Typeにjsonを指定、hoge・piyoをPOSTで送っています。

では「C-c C-c」で実行してみましょう。

POST実行結果

POST通信の結果を確認してみます。

emacs-httpel4

無事にjson形式でデータを受け取ることができました。

これでわざわざPHPやruby等でhttp通信のコードを書いて確かめる、なんてことをしなくて済みますね。ぜひ、HTTP通信をおこなうときの参考にしてください。

まとめ

http.elでちょっとしたHTTP通信の確認をスムーズにおこなうことができました。

バッファに記述したHTTPリクエストは、保存してまとめておけば再利用できて便利ですね。

この記事が気に入ったら
いいね ! しよう

Twitter で
LINEで送る
Pocket

okutani (@okutani_t) のヒトコト
自分はEmacsもサーバー通信もまだまだ勉強中の身。るびきち先生のサイトをみて日々勉強であります。Emacsって楽しいよねぇ。

 - Emacs

スポンサーリンク

PC用AdSense

PC用AdSense

▼格安のWebサイト制作はじめました▼

格安のWebサイト制作
Share
  • このエントリーをはてなブックマークに追加

  こちらの関連記事もどうぞ

Emacs Caskでパッケージ管理をしてみよう

こんにちは、okutani(@okutani_t)です。本記事ではEmacsのパ …

[Emacs] カラーコードを表示できる「rainbow-mode」を使ってみた

こんにちは、okutani(@okutani_t)です。私は普段Emacsを使っ …

EmacsでSSH接続!『tramp』を使ってみよう

こんにちは、okutaniです。Emacsには、ローカルのEmacsからサーバー …

[Emacs] web-modeにyasnippetの既存スニペットを適応させる

EmacsでWebサイト構築の際に便利な「web-mode」。特にHTMLにPH …

[Mac]HomebrewでEmacs導入&エイリアス設定で起動速度UP

こんにちは、okutani(@okutani_t)です。今回はMacにHomeb …

Emacsにyasnippetを導入&スニペットの登録方法

こんにちは、okutani(@okutani_t)です。yasnippetを利用 …

[Emacs]init-loader.elで設定ファイルを分割管理してみよう

こんにちは、okutani(@okutani_t)です。Emacsではemacs …

CentOS7に最新のEmacsを導入する方法

こんにちは、okutani(@okutani_t)です。需要があるかどうか分かり …

vdeepのトップページへ戻る画像です。風船の形をした島を女の子が掴んでいます。