我是Golang和AWS的新手。我正在尝试使用AWS SNS发送SMS。 我已经设置了环境变量,然后尝试发送SMS。
export AWS_ACCESS_KEY_ID=AKIAIOSFODN..
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEM..
export AWS_DEFAULT_REGION=us-west-2
我尝试调试出问题的地方 但是总是出错 缺少区域:找不到区域配置
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)
}
自最近两天以来,我一直在尝试这样做。请帮我解决问题。
答案 0 :(得分:1)
您必须配置SDK。要仅设置区域,您可以执行类似A C E
0 6 4
2 12 8
3 2 2
您可以在此处查看有关配置的完整详细信息:https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html
答案 1 :(得分:1)
Go SDK无法识别环境变量AWS_DEFAULT_REGION
可以使用AWS_REGION
名称来指定区域,如下所示:
export AWS_REGION="us-west-2"
另一种方法是根据noisewaterphd
的答案在创建会话的同时显式传递区域