分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

Go net/http获取body中json格式数据

发布时间:2023-09-06 01:30责任编辑:董明明关键词:jsjsonhttpbody

Go net/http获取body中json格式数据

package mainimport ("encoding/json""fmt""io/ioutil""net/http")type AutotaskRequest struct {RequestID string ????`json:"requestid"`Clone ????CloneModel `json:"clone"`Push ?????PushModel ?`json:"push"`}type CloneModel struct {//TODO//"Method": string `json:"ceph"`RequestID ??string `json:"requestid"`CallbackURL string `json:"callbackurl"`}type PushModel struct {RequestID ??string `json:"requestiD"`CallbackURL string `json:"callbackuRL"`IP ?????????string `json:"remoteip"`Port ???????int ???`json:"remoteport"`User ???????string `json:"user"`}func test(w http.ResponseWriter, r *http.Request) {// r.ParseForm()defer fmt.Fprintf(w, "ok\n")fmt.Println("method:", r.Method)body, err := ioutil.ReadAll(r.Body)if err != nil {fmt.Printf("read body err, %v\n", err)return}println("json:", string(body))var a AutotaskRequestif err = json.Unmarshal(body, &a); err != nil {fmt.Printf("Unmarshal err, %v\n", err)return}fmt.Printf("%+v", a)}func main() {http.HandleFunc("/test", test)http.ListenAndServe(":8888", nil)}

  客户端所传递参数如下:

{ ???"requestid": "xxxxx", ???"clone": { ???????"method": "ceph", ???????"callbackurl": "xxx", ???????"remoteip": "192.168.2.1", ???????"remoteport": 8080, ???????"user": "xxx", ???????"pass": "xxx", ???????"path": "xxx", ???????"filename": "xxx" ???}, ???"optimize": { ???????"callbackurl": "xxx", ???????"filter": { ???????????"k1": true, ???????????"k2": false ???????}, ???????"trim": true, ???????"progressive": true, ???????"quality": 100, ???????"colorNum": 256, ???????"gifOptLevel": 2, ???????"svgo": true, ???????"guetzli": false, ???????"css_rewrite": false, ???????"js_rewrite": false ???}, ???"push": { ???????"method": "ceph", ???????"callbackurl": "xxx", ???????"remoteip": "192.168.2.1", ???????"remoteport": 8080, ???????"user": "xxx", ???????"pass": "xxx", ???????"path": "xxx", ???????"filename": "xxx" ???}}

json传递的参数中,服务端有的没有对应字段

Go net/http获取body中json格式数据

原文地址:http://www.cnblogs.com/pluse/p/7927768.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved