func getPrivateVlan(env string) (string, error) { // 1. Create a session sess := session.New(user, pass) // 2. Get a service accountService := services.GetAccountService(sess) // 3. Invoke a method: vlans, err := accountService.GetNetworkVlans() vlan := vlans[0] log.Println(vlan.Name) //works log.Println(vlan.PrimaryRouter) //Doesn’t work }
返回的对象是类型为SoftLayer_Network_Vlan的vlan数组,https: //sldn.softlayer.com/reference/datatypes/softlayer_network_vlan 。我能够访问“本地属性”列(即名称)中的属性,但无法访问“关系和计数属性”列(即PrimaryRouter)中的属性。如何为我的通话添加对象掩码以查看这些属性?
F.Ojeda:默认端点是REST,但是在您的环境中,您使用的是xmlrpc,这可能是由于〜/ .softlayer文件的存在,并且在此文件中将其配置为XMLRPC入口。
有关更多信息,请参见以下文档:https ://github.com/softlayer/softlayer-go
XMLRPC enpoint会发生此问题,您可以在go GitHub中进行报告。https://github.com/softlayer/softlayer-go/issues/
尝试使用REST端点输入代码,例如以下示例:
endpoint := "https://api.softlayer.com/rest/v3" // Create a session sess := session.New(username, apikey, endpoint)