2021.02.27  

curlコマンドでPOSTする (画面送信版)

Linux    

Web画面に向けてcurlコマンドでPOSTする例を紹介します。
JSONのデータをPOSTする例を見たい方はこちらをどうぞ。

今回実行するコマンドがこちら。

$ curl -X POST -d 'name=Tom&age=12' http://127.0.0.1:8000/cui_post_test

-Xで HTTPメソッドの指定。
-dで POST メソッドでリクエストするデータを指定。
最後の「http://127.0.0.1:8000/cui_post_test」で送信先を指定しています。



送信先の画面はこちら。

氏名に「Tom」、年齢 に「24」を入力し、送信ボタンを押すと、
画面に「氏名: Tom さん」「年齢: 24 歳」と出力されます。

ではこの画面に向けて、先ほどのcurlコマンドを実行します。
するとテキストボックスに-dで指定したデータが入力され、その結果がコンソールに返ってきます。
下から2行目が-dの結果が反映された部分です。

$ curl -X POST -d 'name=Tom&age=24' http://127.0.0.1:8000/cui_post_test
<html lang="ja">
  <head>
    <meta charset="utf-8">
    <title>POSTテスト</title>
  </head>

  <body>
    <h1>POSTの送信テスト用ページです</h1>
    <p>名前は[name]、年齢は[age]でPOSTしてください</p>

    <form action="/cui_post_test" method="post">
        <tr><th><label for="id_name">氏名:</label></th><td><input type="text" name="name" value="Tom" required id="id_name"></td></tr>
        <tr><th><label for="id_age">年齢:</label></th><td><input type="number" name="age" value="24" required id="id_age"></td></tr>
        <input type="submit" value="送信">
    </form>

    <p>↓にPOSTの結果が表示されます</p>
    <p>氏名: Tom さん<br>年齢: 24 歳</p>  <!-- POSTの結果が反映された部分 -->
  </body>

「氏名: Tom さん 年齢: 24 歳」となっていますね。
ちなみに inputタグ内の value= の値も書き変わっています。

-dの値を変えて実行してみます。
nameを「Jon」、ageを「33」と書き換えてコマンドを実行します。

$ curl -X POST -d 'name=Jon&age=33' http://127.0.0.1:8000/cui_post_test
<html lang="ja">
  <head>
    <meta charset="utf-8">
    <title>POSTテスト</title>
  </head>

  <body>
    <h1>POSTの送信テスト用ページです</h1>
    <p>名前は[name]、年齢は[age]でPOSTしてください</p>

    <form action="/cui_post_test" method="post">
        <tr><th><label for="id_name">氏名:</label></th><td><input type="text" name="name" value="Jon" required id="id_name"></td></tr>
        <tr><th><label for="id_age">年齢:</label></th><td><input type="number" name="age" value="33" required id="id_age"></td></tr>
        <input type="submit" value="送信">
    </form>

    <p>↓にPOSTの結果が表示されます</p>
    <p>氏名: Jon さん<br>年齢: 33 歳</p> <!-- POSTの結果が反映された部分 -->

  </body>

すると、下から二行目の値が先ほどと変わり、
「氏名: Jon さん 年齢: 33 歳」となっていますね。

参考サイト
curl で POST/GET ブラウザを使わずコメントを投稿

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信