代码之家  ›  专栏  ›  技术社区  ›  sheldon

softlayer SDK softlayer\u Exception\u Public:拒绝访问

  •  1
  • sheldon  · 技术社区  · 7 年前

    使用中的示例 Go SDK 使用用户名和 apikey 返回

    {“error”:“拒绝访问。”,“code”:“SoftLayer\u Exception\u Public”}

    package main
    
    import (
        "fmt"
    
        "github.com/softlayer/softlayer-go/services"
        "github.com/softlayer/softlayer-go/session"
        "github.com/softlayer/softlayer-go/sl"
    )
    
    func main() {
            userName := "xxxx"
            apikey := "xxxx"
            sess := session.New(userName, apikey)
            sess.Debug = true
            doListAccountVMsTest(sess)
    }
    
    func doListAccountVMsTest(sess *session.Session) {
        service := services.GetAccountService(sess)
    
        vms, err := service.Mask("id;hostname;domain").Limit(10).GetVirtualGuests()
        if err != nil {
            fmt.Printf("Error retrieving Virtual Guests from Account: %s\n", err)
            return
        } else {
            fmt.Println("VMs under Account:")
        }
    
        for _, vm := range vms {
            fmt.Printf("\t[%d]%s.%s\n", *vm.Id, *vm.Hostname, *vm.Domain)
        }
    }
    
    func handleError(err error) {
        apiErr := err.(sl.Error)
        fmt.Printf(
            "Exception: %s\nMessage: %s\nHTTP Status Code: %d\n",
            apiErr.Exception,
            apiErr.Message,
            apiErr.StatusCode)
    }
    
    2 回复  |  直到 7 年前
        1
  •  0
  •   Albert Camacho    7 年前

    我在运行代码时没有遇到问题,建议检查您发送的用户名和apikey。请参见 API访问信息 个人资料中的部分 https://control.softlayer.com/account/user/profile

        2
  •  0
  •   Awah Teh    5 年前

    值得注意的是,它在IBM cloud上没有很好的文档记录,返回的错误消息也不太清楚这一事实:有时您收到的拒绝访问错误与您没有升级的IBM现收现付帐户有关。

    值得记住的是,其他用户可能会遇到相同的错误消息,但不知道如何处理。