昨日の記事の続き。 Flaskは動かせるようになったため、AWSリソースへアクセスしてみる。
やってみた
boto3のリファレンス を参考に、以下を作成。
from flask import Flask import boto3 app = Flask(__name__) @app.route("/") def hello_world(): return "<p>Hello world!</p>" @app.route("/dynamodb_scan/") def dynamodb_scan(): client = boto3.client("dynamodb") response = client.scan( TableName="temp" ) return response if __name__ == "__main__": app.run(debug=True)
Flaskを起動して、http://127.0.0.1:5000/dynamodb_scan/
へブラウザからアクセスすると、Scan結果が得られた。
Scan結果
{ "Count": 2, "Items": [ { "color": { "S": "yellow" }, "target": { "S": "banana" } }, { "color": { "S": "red" }, "target": { "S": "apple" } } ], "ResponseMetadata": { "HTTPHeaders": { "connection": "keep-alive", "content-length": "132", "content-type": "application/x-amz-json-1.0", "date": "Wed, 13 Mar 2024 22:29:09 GMT", "server": "Server", "x-amz-crc32": "2357452850", "x-amzn-requestid": "9E048FPDU66OTKVD4QQP98LSBRVV4KQNSO5AEMVJF66Q9ASUAAJG" }, "HTTPStatusCode": 200, "RequestId": "9E048FPDU66OTKVD4QQP98LSBRVV4KQNSO5AEMVJF66Q9ASUAAJG", "RetryAttempts": 0 }, "ScannedCount": 2 }
memo
resourceは非推奨のため、clientを利用する。
https://boto3.amazonaws.com/v1/documentation/api/latest/guide/resources.html