go 解析json 生成json

go 解析json 生成json,第1张

概述go生成json解析json解析json数据获取json数据解析json数据发送json数据生成json数据发送json数据解析json数据获取json数据1.你要访问的url2.读取resp的bodyreq,err:=http.NewRequest("GET",dest_version_url,nil)cookie:=&http.Cookie{Name:"token",V

go 生成Json 解析Json解析json数据获取json数据解析json数据发送json数据生成json数据发送 json数据

解析Json数据获取Json数据

1.你要访问的url
2.读取resp的body

req, err := http.NewRequest("GET", dest_version_url,nil)cookie := &http.cookie{name:"token",Value:"ehqhiqhiuhw82231bjbasaass"}req.Addcookie(cookie)clIEnt := &http.ClIEnt{}resp, err := clIEnt.Do(req)if err != nil{	panic(err)}defer resp.Body.Close()body, err := IoUtil.ReadAll(resp.Body)if err != nil {	fmt.Println("ERROR!: ", err)}Jsondata := string(body)
解析Json数据

你事先知道要传送Json的格式,你想从Json中提取你想要的东西1. 定义 Json数组对应的结构体,整体对应slice
2.使用 Json Unmarshal将Json字符串解码到相应的数据结构
3.你不想获取某些字段,可以把某些字段开头小写

type Server_info struct {	Server_name string	Server_IP string	Server map[string]string	ClIEnt map[string]string}type Server_Info_Slice struct {	RectCode int	Server_info []Server_info}func main() {	var serverList_Str = `{"retcode":0,"server_info":[{"server_name":"112","server_ip":"LALLAL","server":{"cpu":"1","disk":"3","memory":"2"},"clIEnt":{"cpu":"4","disk":"6","memory":"5"}}]}`	var serverInfoSlice Server_Info_Slice	Json.Unmarshal([]byte(serverList_Str),&serverInfoSlice)	//fmt.Println(serverInfoSlice)	for _,serverInfoi := range serverInfoSlice.Server_info {		fmt.Println("server_name-->",serverInfoi.Server_name)	}}
发送Json数据

你事先知道要传送Json的格式 , 你想把变量放进Json

生成Json数据

1.定义 Json数组对应的结构体,整体对应slice
2.使用 Json Marshal 将数据编码成Json字符串

type Server_info struct {	Server_name string `Json:"server_name"`	Server_IP string `Json:"server_ip"`	Server map[string]string  `Json:"server"`	ClIEnt map[string]string `Json:"clIEnt"`}type Server_Info_Slice struct {	RectCode int `Json:"retcode"`	Server_info []Server_info  `Json:"server_info"`}func main() {	var serverList Server_Info_Slice	serveri := Server_info{		Server_name:"112",		Server_IP:"LALLAL",		Server: map[string]string{			"cpu": "1",			"memory": "2",			"disk": "3",		},		ClIEnt: map[string]string{			"cpu": "4",			"memory": "5",			"disk": "6",		},	}	serverList.RectCode = 0	serverList.Server_info= append(serverList.Server_info, serveri)	Json_server, err := Json.Marshal(serverList)	if err != nil {		fmt.Println("Json err:", err)	}	fmt.Println(string(Json_server))}
发送 Json数据

1.准备好Json
2.准备你的url

Json_data, _ := Json.Marshal(data)var Json_data_byte = []byte(Json_data)fmt.Println("Json-->",bytes.NewBuffer(Json_data_byte))req, err := http.NewRequest("POST", dest_url, bytes.NewBuffer(Json_data_byte))req.header.Set("Content-Type", "application/Json")cookie := &http.cookie{name:"token",Value:"najnkJsiauhdi9w3832233"}req.Addcookie(cookie)clIEnt := &http.ClIEnt{}clIEnt.Do(req)
总结

以上是内存溢出为你收集整理的go 解析json 生成json全部内容,希望文章能够帮你解决go 解析json 生成json所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1211872.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存