duankun9280 2018-12-10 12:44
浏览 483
已采纳

Gin框架无法从Postman获取数据

Gin framework can not get the data from Postman,below is a demo:

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
}

Send a request from postman: enter image description here

Debug info:

enter image description here

Where is the problem?
What should I do?

  • 写回答

1条回答 默认 最新

  • dtrpv60860 2018-12-10 12:54
    关注

    Accordingly to your screen it looks like you're sending x-www-form-urlencoded request and it this case you have to have form tags in your CreateRequest struct:

    type CreateRequest struct {
        Username string `json:"username" form:"username"`
        Phone    string `json:"phone" form:"phone"`
        Password string `json:"password" form:"password"`
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?