| サンプル集 |
|
■VC ■C# ■Java ■BorlandC ■LinuxC ■MS-DOS ■bash ■Excel VBA ■VBScript ■PHP ■HTML ■perl ■iPhone ■Android ■Lua ■WordPress ■PowerShell ■Python ■Flutter ■other |
| Linuxコマンド |
| 用語集 |
| debian メモ |
| apache2 メモ |
| MySQL メモ |
| Oracle メモ |
| HOME |
API GatewayにAPIキーを設定します。
API Gateway+Lambda POSTを受けるで作ったものにcurlでAPI GatewayにPOSTしてみます。
fault/jsondump{"message":"Missing Authentication Token"}
想定通りエラーになりました。
API GatewayのAPIを開きます。

左のメニューの「API キー」をクリックします。

「APIキーの作成」をクリックします。

必要な情報を入力し「保存」をクリックします。
| 名前 | jsondump APIKey |
|---|
API キーが作成されました。

左のメニューの「使用量プラン」をクリックします。

「使用量プランを作成」をクリックします。

必要な情報を入力し画面の下の「使用量プランを作成」をクリックします。
| 名前 | jsondump plan | 任意の名前 |
|---|---|---|
| レート | 1 | 1秒あたりのリクエスト数 |
| バースト | 1 | 同時に実行できるリクエスト数 |
| リクエスト | 10 1日あたり | ユーザーが実行できるリクエスト数 |
使用量プランが作成されました。

使用量プラン「jsondump plan」の名前をクリックします。

「ステージを追加」をクリックします。

必要な情報を入力し画面の下の「使用量プランに追加」をクリックします。
| API | jsondump-API |
|---|---|
| ステージ | default |
使用量プランにステージが関連付けられました。

「関連付けられた APIキー」をクリックします。

「API キーを追加」をクリックします。

必要な情報を入力し画面の下の「APIキーを追加」をクリックします。
| タイプ | 既存のキーを追加 |
|---|---|
| API キー | 「jsondump APIKey」を選択 |
使用量プランにAPIキーが追加されました。

curlでAPI GatewayにPOSTしてみます。
fault/jsondump{"message":"Missing Authentication Token"}
特に挙動に変化はありませんでした。
API Gatewayのjsondump-APIを開きます。

「メソッドリクエストの編集」欄の「編集」をクリックします。

設定を変更し画面の下の「保存」をクリックします。
| 許可 | なし |
|---|---|
| API キーは必須です | チェックを入れる |
正常に保存されました。

curlでAPI GatewayにPOSTしてみます。
fault/jsondump{"message":"Missing Authentication Token"}
特に挙動に変化はありませんでした。
「APIをデプロイ」をクリックします。

「ステージ」欄を「default」を選択します。

「デプロイ」をクリックします。

正常にデプロイされました。
curlでAPI GatewayにPOSTしてみます。
fault/jsondump{"message":"Forbidden"}
結果はForbiddenになりました。
curlでヘッダーにx-api-keyを指定してAPI GatewayにPOSTしてみます。
rtheast-1.amazonaws.com/default/jsondump{"message":"Forbidden"}
結果は同じくForbiddenでした。
POSTをダブルクォート(")で囲み、ヘッダーの文字列もシングルクォート(')からダブルクォート(")に変更したところ期待通りに動作しました。
northeast-1.amazonaws.com/default/jsondump"Lambda got your json!"
試しにPOSTをシングルクォート(')で囲んでみます。
northeast-1.amazonaws.com/default/jsondump<html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
</body>
</html>
ダブルクォート(")とシングルクォート(')とで挙動が違いますね。。。
リクエストを1日10回までに設定しているため11回目以降は「Too Many Requests」が返って来ました。
northeast-1.amazonaws.com/default/jsondump{"message":"Too Many Requests"}
期待通りに動作しました。
curlのバージョンを確認しておきます。
curl 8.9.1 (Windows) libcurl/8.9.1 Schannel zlib/1.3 WinIDN
Release-Date: 2024-07-31
Protocols: dict file ftp ftps http https imap imaps ipfs ipns mqtt po
p3 pop3s smb smbs smtp smtps telnet tftpFeatures: alt-svc AsynchDNS HSTS HTTPS-proxy IDN IPv6 Kerberos Largef
ile libz NTLM SPNEGO SSL SSPI threadsafe Unicode UnixSocketsダブルクォート(")とシングルクォート(')は特に意識しないで使っていたので今後は気を付けないといけないなと思いました。
Copyright (C) 2025 ymlib.com
