我正在尝试从API中检索数据。当我从api中获取数据时:
result, _ := s.GetCases() // get cases via api
fmt.Println(reflect.TypeOf(result.Records[0]["Cases"]))
显示结果的类型,记录[0][“案例”]是map[string]interface {}
然而,显然我不能直接使用这个作为Map。因为:
fmt.Println(reflect.TypeOf(result.Records[0]["Cases"]["Id"]))
这将导致编译器错误:
无效操作:无法为结果编制索引。记录[0][“案例”](Map接口{}类型的索引表达式)
我可以知道我应该如何使用这种类型的golang?
1条答案
按热度按时间7bsow1i61#
该值的类型为
interface{}
,根据反射的输出,该接口中有一个map[string]interface{}
值。因此,您必须使用类型Assert来获取存储在接口中的实际值: