REST APIを使ってJSONをPOSTする

メモ

はじめに

REST APIを使用したモジュールに対してサクッとJSONをPOSTしたいと思うときが多々あります。

GETならブラウザからURLをいれて反応を見れば良いんですが、POSTだとそうも行きません。
ググってみると同じ悩みを持つ同士が素晴らしき解決策を出していたので試してみるも、ちょいちょいハマったので備忘録がてらメモ。

結論

最初はJavaで適当なモジュールを作成して実行しようかと思っていたのですが、よくよく調べるとcurlコマンドで行けるらしいのでそちらを採用。

まずはPOSTするデータをJSON形式で作成します。

{"XXXList":[{"項目1":"aaa", "項目2":"bbb"}]}

こんな感じでファイルを作成し、「test.json」と名前をつけて保存。
外出しのファイルでPOSTする場合にはエスケープ処理は不要らしいです。
(最初はエスケープ処理したせいでエラーになってた。ハマったポイント1)

続いてコマンドプロンプトを開き、以下のコマンドを実行。
(やり方は複数あるようです。いろいろ試した結果、私の場合はこれでうまくいきました。)

$ curl https://kskst.net/api/XXXXX -i XPOST -H 'Content-Type:application/json' -d @test.json

ファイル名の前の「@」を忘れずに。
(私はこれを忘れたせいで1時間エラーと戦いました。ハマったポイント2)

タイトルとURLをコピーしました