go - Gin 框架无法从 Postman 获取数据
问题描述
Gin 框架无法从 Postman 获取数据,下面是一个演示:
package main
import (
"fmt"
"github.com/gin-gonic/gin"
)
type CreateRequest struct {
Username string `json:"username"`
Phone string `json:"phone"`
Password string `json:"password"`
}
func Signup(c *gin.Context) {
var r CreateRequest
if err := c.Bind(&r); err != nil {
fmt.Println(err)
}
fmt.Println("this is debug info:start")
fmt.Println(r.Username)
fmt.Println("this is debug info:end")
}
func main() {
r := gin.Default()
r.POST("/signup", Signup)
r.Run() // listen and serve on 0.0.0.0:8080
}
向邮递员发送请求:
调试信息:
问题出在哪里?
我应该怎么办?
解决方案
根据您的屏幕,看起来您正在发送x-www-form-urlencoded
请求,在这种情况下form
,您的结构中必须有标签CreateRequest
:
type CreateRequest struct {
Username string `json:"username" form:"username"`
Phone string `json:"phone" form:"phone"`
Password string `json:"password" form:"password"`
}
推荐阅读
- openedge - 在代码页 ISO8859-1 (12008) 的数据中发现无效字符代码
- amazon-s3 - AWS S3 在两个存储桶之间复制资产
- apache-flink - 自定义对象的值状态的 Flink 状态恢复问题
- javascript - 如何从应用程序外部访问 Angular js 应用程序?
- python - Keras model.summary() 是否有很好的输出?
- javascript - 从 csv 文件创建一个新数组
- python - Python 回购清理
- c++ - c++ 中 gsl 断言与断言的优势?
- powershell - 如何在 PowerShell 6 中打开新选项卡?
- python - loop in web scraper