0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:Cognito認証を用いた curl コマンドによる API リクエストでデータを挿入してみた

Last updated at Posted at 2025-02-18

はじめに

DB にデータを挿入する方法を探していて、適切なリクエストの送り方が分からず困っていました。

その中で curl コマンドを使う方法が有効だと知り、実際のリクエスト例を整理することにしました。

本記事では、curl コマンドを使用して API にリクエストを送る方法を解説します。特に、JSON データを送信する方法と、認証トークンを使用する方法に焦点を当てます。

コマンドの概要

以下の curl コマンドを例に説明します。

curl -X POST \
     -H 'Content-Type: application/json' \
     -H "Authorization: Bearer xxxxx.yyyyy.zzzzz" \
     -d '{"score":77}' \
     "http://localhost:1323/api/scores"

オプションの説明

  • -X POST : HTTP メソッドとして POST を指定
  • -H 'Content-Type: application/json' : リクエストの Content-Type を JSON に指定
  • -H "Authorization: Bearer xxxxx.yyyyy.zzzzz" : 認証用の Bearer トークンをヘッダーに設定
  • -d '{"score":77}' : JSON データをリクエストのボディに含める
  • "http://localhost:1323/api/scores" : API のエンドポイント

認証トークンについて

このコマンドでは Authorization: Bearer xxxxx.yyyyy.zzzzz という認証トークンを含めています。これは JWT (JSON Web Token) などの認証方式で API にアクセスする際に必要となります。

トークンのダミー化

実際の環境では、トークンは個別の認証情報として発行されるため、外部に漏洩しないように注意が必要です。本記事では xxxxx.yyyyy.zzzzz のようにダミーのトークンを使用しています。

API エンドポイントについて

この例では http://localhost:1323/api/scores という URL にリクエストを送信しています。実際の環境では、この URL は変更され、サーバーが提供する適切な API のエンドポイントを指定する必要があります。

実行結果の確認

この curl コマンドを実行すると、API は以下のようなレスポンスを返す可能性があります。

成功時のレスポンス例

{
  "message": "Score submitted successfully",
  "score": 77
}

認証エラーの場合

{
  "error": "Unauthorized",
  "message": "Invalid or expired token"
}

このような場合、トークンが無効または期限切れである可能性があるため、新しいトークンを取得する必要があります。

まとめ

  • curl を使用して API に POST リクエストを送信できる。
  • Content-Type: application/json を指定することで JSON データを送信可能。
  • Authorization: Bearer <トークン> をヘッダーに含めることで認証を実施。
  • API のレスポンスを確認して適切に対応する。

この情報を活用して、安全かつ正しく API へリクエストを送信することで解決しm

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?