博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go net/http获取body中json格式数据
阅读量:5111 次
发布时间:2019-06-13

本文共 1986 字,大约阅读时间需要 6 分钟。

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 AutotaskRequest	if 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传递的参数中,服务端有的没有对应字段

 

转载于:https://www.cnblogs.com/pluse/p/7927768.html

你可能感兴趣的文章
webView添加头视图
查看>>
php match_model的简单使用
查看>>
在NT中直接访问物理内存
查看>>
Intel HEX 文件格式
查看>>
SIP服务器性能测试工具SIPp使用指导(转)
查看>>
php_扑克类
查看>>
回调没用,加上iframe提交表单
查看>>
(安卓)一般安卓开始界面 Loding 跳转 实例 ---亲测!
查看>>
Mysql 索引优化 - 1
查看>>
LeetCode(3) || Median of Two Sorted Arrays
查看>>
大话文本检测经典模型:EAST
查看>>
待整理
查看>>
一次动态sql查询订单数据的设计
查看>>
C# 类(10) 抽象类.
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
jvm参数
查看>>
我对前端MVC的理解
查看>>
Silverlight实用窍门系列:19.Silverlight调用webservice上传多个文件【附带源码实例】...
查看>>
2016.3.31考试心得
查看>>
mmap和MappedByteBuffer
查看>>