storagegateway.ListGateways() возвращает "Неверный ресурс" с кодом состояния: 400

У меня возникли проблемы при использовании go sdk для отображения списка всех шлюзов в регионе с помощью следующего кода:

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/storagegateway"
)

func newSess() (sess *session.Session) {
    sess, err := session.NewSession(&aws.Config{
        Region: aws.String("us-east-2"),
    })

    if err != nil {
        fmt.Printf("Error creating session: %s\n", err)
        return
    }

    return sess
}

func main() {
    sgw := storagegateway.New(newSess())

    input := &storagegateway.ListGatewaysInput{
        Limit:  aws.Int64(5),
        Marker: aws.String("1"),
    }

    result, err := sgw.ListGateways(input)
    if err != nil {
        fmt.Printf("Error listing gateways %s\n", err)
        return
    }

    fmt.Println(result)

}

Моя среда выглядит следующим образом:

  • Версия Go: 1.9.2 darwin / amd64
  • Операционная система: macOS 10.13.2
  • aws-sdk-go: v1.12.63

SDK использует профиль по умолчанию, указанный в ~/.aws/config как следует и учетные данные также правильные. Кроме того, я могу перечислить шлюзы, используя только awscli.

Это может быть что-то простое, что я упустил из виду, потому что я не эксперт. Тем не менее, любая помощь будет принята с благодарностью.

1 ответ

Код примера работает, как и ожидалось, просто удалив Marker: aws.String("1")линия.

Другие вопросы по тегам