gpt4 book ai didi

ruby-on-rails - Seahorse::Client::NetworkingError(主机名 "mybucketname.s3.s3-us-west-2.amazonaws.com"与服务器证书不匹配)

转载 作者:太空宇宙 更新时间:2023-11-03 16:48:16 24 4
gpt4 key购买 nike

我在使用 Amazon AWS SDK 版本 2 调用 .head_object 时遇到问题。我在 Rails 项目中工作,使用 Figaro 设置我的环境变量并将它们命名为 AWS SDK 期望的名称:AWS_ACCESS_KEY_ID 等

这是我用来尝试调用 head_object 的代码:

direct_upload_url_data = %r{\/(?<path>uploads\/.+\/(?<filename>.+))\z}.match(direct_upload_url)
direct_upload_url_data_string = direct_upload_url_data.to_s
s3 = Aws::S3::Client.new
direct_upload_head = s3.head_object(
bucket: ENV['AWS_BUCKET'],
key: direct_upload_url_data_string
)

self.image_file_name = direct_upload_url_data[:filename]
self.image_file_size = direct_upload_head.content_length
self.image_content_type = direct_upload_head.content_type
self.image_updated_at = direct_upload_head.last_modified

如您所见,我正在尝试访问特定文件的元数据。我已经检查了正则表达式,它似乎返回了正确的键,类似于“uploads/{uniqueID}/image.jpg”错误出现在我试图调用 head_object 的那一行。我得到的错误是

Seahorse::Client::NetworkingError (hostname "mybucketname.s3.s3-us-west-2.amazonaws.com" does not match the server certificate)

那条路不是我去我的桶时看到的,我看到了https://s3-us-west-2.amazonaws.com/mybucketname所以我不确定这是否是我收到错误的原因。在使用 AWS SDK 版本 1 之前,我已经连接到这个存储桶,所以我知道我的访问 key 和 secret key 工作正常。预先感谢您的帮助。

最佳答案

您的亚马逊存储桶区域名称似乎有误。尝试将“s3-us-west-2”更改为“us-west-2”。

关于ruby-on-rails - Seahorse::Client::NetworkingError(主机名 "mybucketname.s3.s3-us-west-2.amazonaws.com"与服务器证书不匹配),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28558794/

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