【发布时间】:2017-09-30 07:48:48
【问题描述】:
我正在尝试发送 curl 请求。这是我的要求:
curl -H "Content-Type: application/json" -X POST -d '{"username":"tahereh","password":"1234", "admin":true}' http://localhost:8000/users
我在我的代码中解码此请求并将其存储在代码的用户结构的“用户变量”中,如下所示:
var newUser models.User //User is an struct in model package
err1 := json.NewDecoder(r.Body).Decode(&newUser)
然后我使用dlv debug 命令行调试我的代码。我的问题是当我在dlv 中打印newUser 和print newUser 时,所有变量都正确设置,但布尔值除外。当我通过 curl 请求发送真值时,它设置为假!
要点:我打印了err1,它也是空的。
【问题讨论】:
-
发布您的
models.User类型。 -
type User struct { ID uint64
json:"id" gorm:"primary_key;AUTO_INCREAMENT"Username stringjson:"username,omitempty" gorm:"size:100;not null;unique"Password stringjson:"password,omitempty" gorm:"size:200;not null"Admin booljson:"admin" gorm:"not null;default=flase"Charges Chargejson:"charges,omitempty" gorm:"ForeignKey:UserID"Income Incomejson:"incomes,omitempty" gorm:"ForeignKey:UserID"}