beego json.Unmarshal is err: unexpected end of JSON input无法获取到数据

发布于 2022-09-11 18:17:46 字数 867 浏览 17 评论 0

func (this*UserController)RetData(resp map[string]interface{}) {

this.Data["json"] =resp
this.ServeJSON()

}

func (this*UserController)RegHtml() {

this.TplName = "reg.html"

}

func (this*UserController)Reg() {

resp := make(map[string]interface{})
defer this.RetData(resp)
err :=json.Unmarshal(this.Ctx.Input.RequestBody,&resp)
//resp["errno"] =4001
//resp["errmsg"] ="查询失败"
//this.RetData(resp)
//beego.Info("mobile",resp["mobile"],resp)
//beego.Info("password",resp["password"])
//beego.Info("sms_code",resp["sms_code"])
o :=orm.NewOrm()
user := models.User{}
if err != nil {
    fmt.Println("json.Unmarshal is err:", err.Error())
}### 问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

静水深流 2022-09-18 18:17:46

看了下源码,你调用的this.Ctx.Input.RequestBody是需要调用this.Ctx.Input.CopyBody()之后才会赋值。
你可以看下他这个方法的实现,他也是从this.Ctx.Request.Body这属性中复制内容并复制给RequestBody的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文