MissingRegion:在 golang 和 aws sns 中找不到区域配置

MissingRegion: could not find region configuration in golang and aws sns

我是 Golang 和 AWS 的新手。我正在尝试使用 AWS SNS 发送短信。 我已经设置了环境变量,然后尝试发送短信。

export AWS_ACCESS_KEY_ID=AKIAIOSFODN..
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEM..
export AWS_DEFAULT_REGION=us-west-2

我试着调试我出错的地方 但总是报错 MissingRegion:找不到区域配置

package main

import (
    "fmt"

    "github.com/aws/aws-sdk-go/aws"
    "github.com/aws/aws-sdk-go/aws/session"
    "github.com/aws/aws-sdk-go/service/sns"
)

func main() {
    fmt.Println("creating session")
    sess := session.Must(session.NewSession())
    fmt.Println("session created")
    svc := sns.New(sess)
    fmt.Println("service created")
    params := &sns.PublishInput{
        Message: aws.String("testing 123"),         
        PhoneNumber: aws.String("+14445556666"),    
    }
    resp, err := svc.Publish(params)

    if err != nil {
        fmt.Println(err.Error())
        return
    }
    fmt.Println(resp)
}

自从上次 2 次以来,我一直在尝试这样做 days.Please 帮助我找出错误的地方。

您必须配置SDK。要仅设置区域,您可以执行类似

的操作
sess, err := session.NewSession(&aws.Config{
    Region: aws.String("us-west-2")},
)

您可以在此处查看有关配置的完整详细信息:https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html

Go SDK 无法识别环境变量AWS_DEFAULT_REGION
可以使用 AWS_REGION 名称指定区域,如下所示

export AWS_REGION="us-west-2"

另一种方法是根据

的回答在创建会话时显式传递区域