我需要一些帮助来尝试将aws-sdk-go与localstack 集成以访问 SQS 服务。
我试过类似的东西:
result, err := q.Client.SendMessage(&sqs.SendMessageInput{
MessageAttributes: map[string]*sqs.MessageAttributeValue{
"JobName": &sqs.MessageAttributeValue{
DataType: aws.String("String"),
StringValue: aws.String(jobName),
},
},
MessageBody: aws.String(messageBody),
QueueUrl: &q.URL,
})
if err != nil {
return "", err
}
使用如下初始化:
type Queue struct {
Client sqsiface.SQSAPI
URL string
}
var q Queue
func init() {
sess := session.Must(session.NewSessionWithOptions(session.Options{
SharedConfigState: session.SharedConfigEnable,
}))
q = Queue{
Client: sqs.New(sess),
URL: viper.GetString("queue.sqs.url"),
}
}
如何配置 SDK 以访问 localstack 的 SQS?