ASP NET Core AWS 部署到 Heroku 时未配置 RegionEndpoint 或 ServiceURL

Beg*_*ius 2 asp.net heroku amazon-s3 amazon-web-services

您好,我将 WEB API 项目部署到 Heroku,但收到 AWS 异常“未配置 RegionEndpoint 或 ServiceURL”

我尝试将“region”和“aws_default_region”添加到heroku的应用程序环境变量中,并将它们设置为“eu-north-1”,但没有帮助。另外,我将这些行添加到配置下的 web.config 文件中,但我仍然遇到该异常:

<appSettings>
    <add key="AWSRegion" value="eu-north-1"/>
</appSettings>
<aws region="eu-north-1"/>
Run Code Online (Sandbox Code Playgroud)

我无法创建自己的 aws 客户端并以编程方式设置区域,因为我在启动类中创建服务,如下所示:

services.AddAWSService<IAmazonS3>();
Run Code Online (Sandbox Code Playgroud)

在本地构建中,我似乎只是将“区域”添加到我的 .aws/crediantials 文件中并且它有效,但我无法在 Heroku 中执行此操作。

谢谢你提前。

小智 6

看起来您正在构建一个 ASP.NET Core 应用程序,除了一些 IIS 集成之外,它不使用 web.config。您应该将该区域放入 appsettings.json 文件中,如下所示https://aws.amazon.com/blogs/developer/configuring-aws-sdk-with-net-core/或将环境变量 AWS_REGION 设置为您想要的地区。