接口测试 基于 GO 语言的接口测试基础讲解 01:string 类型转 map,以及内嵌 map 取值

random 测试交流评论124字数 950阅读模式

宣传一下自己的公众号,内容出处:
https://mp.weixin.qq.com/s/W4b86dvCEsYCiMnhxzavRw

通过接口获取数据时,常常是 key,value 的形式,在 GO 里面,会声明一个 map 去接收数据,那么当数据是 string 类型的时候,我们要怎么对数据进行处理?下面是一段源代码讲解:文章源自玩技e族-https://www.playezu.com/239714.html

package main
import (
"encoding/json"
"fmt"
"reflect"
)
//字符串转Map
func StringToMap(content string) map[string]interface{} {
var resMap map[string]interface{}
err := json.Unmarshal([]byte(content), &resMap)
if err != nil {
fmt.Println("string转map失败", err)
}
return resMap
}
func main() {
// 示例字符串
resString := `{
"args": {},
"headers": {
"Accept-Encoding": "gzip",
"Host": "httpbin.org",
"User-Agent": "GRequests/0.10",
"X-Amzn-Trace-Id": "Root=1-5f3f3xxxxxxccdc4068"
},
"origin": "11.11.11.22",
"url": "http://httpbin.org/get"
}`
resMap := StringToMap(resString) //字符串转Map
innerMap := resMap["headers"].(map[string]interface{}) //Map嵌套取值,内部嵌套的map 也要转换
fmt.Println("Host取值",innerMap["Host"],reflect.TypeOf(innerMap["Host"]))
fmt.Println("url取值", resMap["url"], reflect.TypeOf(resMap["url"]))
fmt.Println("headers取值",resMap["headers"],reflect.TypeOf(resMap["headers"]))
}
文章源自玩技e族-https://www.playezu.com/239714.html文章源自玩技e族-https://www.playezu.com/239714.html
玩技站长微信
添加好友自动发送入群邀请
weinxin
rainbow-shownow
玩技官方公众号
官方微信公众号
weinxin
PLAYEZU
 
  • 版权提示:本站仅供存储任何法律责任由作者承担▷诈骗举报◁▷新闻不符◁▷我要投稿◁
    风险通知:非原创文章均为网络投稿真实性无法判断,侵权联系2523030730
    免责声明:内容来自用户上传发布或新闻客户端自媒体,切勿!切勿!切勿!添加联系方式以免受骗。
  • 原创转载:https://www.playezu.com/239714.html
    转载说明: 点我前往阅读>>>
匿名

发表评论

匿名网友
确定