gpt4 book ai didi

python-3.x - 如何访问现有的 Amazon DynamoDB 表?

转载 作者:行者123 更新时间:2023-12-02 17:13:45 25 4
gpt4 key购买 nike

一般问题

我关注了this tutorial从 Android 应用程序创建和访问 Amazon DynamoDB,然后将其改编为在我正在编写的应用程序中使用。尽管我在启动和运行它时遇到了困难,但它工作得很好。但是,我还希望能够使用在我的 Raspberry Pi 上运行的 python 脚本访问数据库。

我找到了 this tutorial , 但它似乎只描述了如何与本地 DynamoDB 表进行交互。

具体问题

以下代码连接一个项目并将其写入 DynamoDB 表。我找不到我的 Amazon DynamoDB 的任何类型的端点 URL,只有 ARN,并且没有像我在我的应用程序中使用的那样传递密码或用户名。

# Helper class to convert a DynamoDB item to JSON.
class DecimalEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, decimal.Decimal):
if o % 1 > 0:
return float(o)
else:
return int(o)
return super(DecimalEncoder, self).default(o)

dynamodb = boto3.resource('dynamodb', region_name='us-west-2', endpoint_url="http://localhost:8000")

table = dynamodb.Table('Movies')

title = "The Big New Movie"
year = 2015

response = table.put_item(
Item={
'year': year,
'title': title,
'info': {
'plot':"Nothing happens at all.",
'rating': decimal.Decimal(0)
}
}
)

我已经搜索了有关连接到 Amazon DynamoDB 实例的任何类型的说明,但我找到的所有内容都描述了一个本地表。如果有人可以针对特定问题提供建议或推荐教程,我将不胜感激。

最佳答案

改变

dynamodb = boto3.resource('dynamodb',endpoint_url="http://localhost:8000") 

dynamodb = boto3.resource('dynamodb',region_name='REGION') 

其中 REGION 是您的 dynamodb 区域的名称,例如“us-west-2”。然后它将连接到 AWS DynamoDB 实例。

编辑:如果您还没有这样做,您将需要设置您的 AWS Credentials .有几种选择。一种选择是使用环境变量

Boto3 will check these environment variables for credentials:

AWS_ACCESS_KEY_ID The access key for your AWS account.

AWS_SECRET_ACCESS_KEY The secret key for your AWS account.

关于python-3.x - 如何访问现有的 Amazon DynamoDB 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47643411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com