我正在使用 Beego 框架来构建一个 Web 应用程序,并且我正在尝试向它传递一些 JSON 编码数据。大致来说,这就是我所拥有的:
import (
"github.com/astaxie/beego"
)
type LoginController struct {
beego.Controller
}
func (this *LoginController) Post() {
request := this.Ctx.Request
length := request.ContentLength
p := make([]byte, length)
bytesRead, err := this.Ctx.Request.Body.Read(p)
if err == nil{
//blah
} else {
//tell me the length, bytes read, and error
}
}
根据本教程,上述内容应该可以正常工作(tm)。
我的问题是:bytesRead, err := this.Ctx.Request.Body.Read(p)
正在返回读取的 0 字节,而err.Error()
is EOF
.
然而request.ContentLength
, 是一个合理的字节数(19 个或更多,取决于我输入的数据)。
我无法弄清楚为什么请求看起来有一些长度,但会在Read
. 有任何想法吗?