go语言反射reflect
来源:互联网 发布:网络教育统考网站 编辑:程序博客网 时间:2024/05/16 21:36
//UnKonwnJSONUnmarshal jsonfunc UnKonwnJSONUnmarshal(data []byte, key string) (vv interface{}) { var f interface{} if err := json.Unmarshal(data, &f); err == nil { m := f.(map[string]interface{}) for k, v := range m { if key == k { switch vv := v.(type) { case string: fmt.Println(k, "is string", vv) return vv case int: fmt.Println(k, "is int", vv) case []interface{}: fmt.Println(k, "is arry", vv) return vv case float64: fmt.Println(k, "is float64", vv) return vv default: fmt.Println(k, "is of a type I don't know how to handle") } } else { continue } } } return}
// MissionPerformance methodfunc (uptokenTask MissionTaskStr) MissionPerformance() (rejson bool) { uptokenTask.Name = "missionPerformance" uptoken := createToken() s := strings.Split(uptoken, ":") fmt.Println("policy-base64---", s[2]) policy, err := base64.StdEncoding.DecodeString(s[2]) expire := UnKonwnJSONUnmarshal(policy, "deadline") switch value := expire.(type) { case float64: deadline := int64(value) now := time.Now().Unix() if now < deadline { fmt.Println("==", now) rejson = true } fmt.Println("!=", deadline, now) } fmt.Println("policy", expire) if err != nil { fmt.Println(uptokenTask.Name, "error---", err) } return}
0 0
- go语言反射reflect
- Go语言 详解reflect
- GO语言反射机制
- Go Reflect
- go-reflect
- go reflect
- Go Reflect
- Go语言学习之reflect包(The way to go)
- 反射reflect
- 反射reflect
- 反射Reflect
- 反射Reflect
- Reflect反射
- reflect(反射)
- 反射Reflect
- 反射 Reflect
- reflect(反射)
- reflect--反射
- 序列化
- HDOJ-----1969二分
- Http协议详解
- 图片要启用gzip压缩吗?绝对不要!
- 理清Activity、View及Window之间关系
- go语言反射reflect
- Windows的字体LOGFONT
- Linux夜间模式(f.lux)
- Hive On Spark执行计划总结
- BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
- 使用链表管理内存
- CSS样式表中#和.和缺省的区别
- 酒厂选址
- ubuntu下安装搜狗输入法