我是 Go 的新手,所以希望我能弄清楚我遇到的这个问题。我的问题是我试图迭代一个结构数组,但我一直遇到index out of range问题。出于这个问题的目的,我已经验证我的数组不是空的,但它实际上确实包含至少一个Services结构,并且file_content是包含我的有效字符串的字符串JSON这是代表我遇到的问题的代码片段:type service_config struct { Services []struct { Name string Command string Request map[string]interface{} }}var ServiceConf = service_config{}err_json := json.Unmarshal(file_content, &ServiceConf)for _, s := range ServiceConf.Services { log.Println(s)}所以每次我运行我的代码时,我都会得到:2014/03/14 18:19:53 http: panic serving [::1]:65448: runtime error: index out of range{ "services" : [ { "name": "translation", "command": "to german", "request": { "key": "XXX", "url": "https://www.googleapis.com/language/translate/v2?" } } ]}
1 回答
繁花如伊
TA贡献2012条经验 获得超12个赞
错误来自这一行
fmt.Fprintf(w, "{ \"text\": \"Translated to German you said: '%s'\" }", f.Data.Translations[0].TranslatedText)
所以你没有得到任何Translations
回报 - 该数组是空的。
您可能想要检查resp.Status
是否返回了错误。这不会作为错误返回 - 您需要自己检查。
- 1 回答
- 0 关注
- 238 浏览
添加回答
举报
0/150
提交
取消