Androidアプリ開発の学習のために通信処理を作成したのですが、簡単に叩けるWebAPIはないかなと困っていたことがありました。GET
の確認は、ローカルサーバを立てれば簡単に確認ができるのですが、POST
の確認が簡単にできませんでした。。。
参考までに、Macで1コマンドローカルサーバーを立てる方法は以下の記事になります。
ローカルのWebサーバを立て方
コマンド一発でローカル環境でWebサーバを立てられます。このとき、コマンドを実行した際のパスがドキュメントルートになります。起動後は でアクセスできます。 Pythonのバージョンによってコマンドが少し異なるため、2ケース記載します。 起動...
httpbinでお試し
インターネットで少し調べていると、素晴らしいWebサービスを見つけましたので備忘録として残しておきます。
それがhttpbinです。
httpbin.org
こちらは、GET
/POST
だけでなくPUT
/DELETE
/PATCH
のHTTPリクエストも確認することができます。
また、URLを変更することで画像のダウンロードのリクエストができたり、ステータスコードを500エラーや400エラーをサーバから返却させることもできます。
なので、エラーケースの動作を確認することもできちゃいますね。
使い方
ベースのURLに対して少し書き加えることでGET
/POST
の確認ができます。
ベースのURLは https://httpbin.org
または http://httpbin.org
でOKです。
今回は、Androidアプリの記事ではないため、curl
コマンドで残しておきます。
GETメソッド
ベースのURLに/get
をつけてリクエストを送信するだけです。
$ curl -X GET "https://httpbin.org/get"
{
"args": {},
"headers": {
"Accept": "*/*",
"Host": "httpbin.org",
"User-Agent": "curl/7.64.1",
"X-Amzn-Trace-Id": "Root=1-5fec3f06-6cb338490a896b15792e54df"
},
"origin": "XXX.XXX.XXX.XXX",
"url": "https://httpbin.org/get"
}
POSTメソッド
ベースのURLに/post
をつけてリクエストを送信します。
$ curl -X POST "https://httpbin.org/post"
{
"args": {},
"data": "",
"files": {},
"form": {},
"headers": {
"Accept": "*/*",
"Host": "httpbin.org",
"User-Agent": "curl/7.64.1",
"X-Amzn-Trace-Id": "Root=1-5fec3fa5-3168262c74a7050a4760fef4"
},
"json": null,
"origin": "XXX.XXX.XXX.XXX",
"url": "https://httpbin.org/post"
}
-d
でデータを送信することも可能です。
(ヘッダーの追加も可能)
$ curl -X POST "https://httpbin.org/post" -d "id=hoge"
{
"args": {},
"data": "",
"files": {},
"form": {
"id": "hoge"
},
"headers": {
"Accept": "*/*",
"Content-Length": "11",
"Content-Type": "application/x-www-form-urlencoded",
"Host": "httpbin.org",
"User-Agent": "curl/7.64.1",
"X-Amzn-Trace-Id": "Root=1-5fec4110-7e251eea6fa4e4e2017204a2"
},
"json": null,
"origin": "XXX.XXX.XXX.XXX",
"url": "https://httpbin.org/post"
}
コメント
[…] 通信処理作成時の動作確認に使えるWebAPIのお試しサイト https://toronavi.com/webapi-httpbin […]