猿问

golang中获取post请求失败

我在如何在 Go 上获取发布请求时遇到问题。


我正在尝试json.Unmarshal(),但仍然不起作用


package controllers


import (

    "encoding/json"

    "net/http"


    "github.com/gin-gonic/gin"

)


//CreateOrder function

func CreateOrder(c *gin.Context) {


    var requestBody struct {

        TransNo string `json:"trans_no"`

    }


    err := json.NewDecoder(c.Request.Body).Decode(&requestBody)


    if err != nil {

        panic(err)

    }


    c.JSON(http.StatusOK, gin.H{"data": requestBody.TransNo})


}

我没有任何错误,但结果没有显示任何内容。


这是我的帖子数据:


{

  "transaction_details": {

    "trans_no": "12400099",

    "gross_amount": 50000

  }

}

我想要获得trans_no价值


慕无忌1623718
浏览 211回答 1
1回答

莫回无

如果您的requestBody发布数据是:{    "trans_no": "12400099",    "gross_amount": 50000}但由于该信息嵌套得更深,因此您需要将该嵌套包含在模型中。var requestBody struct {    TransactionDetails struct {        TransNo string `json:"trans_no"`    } `json:"transaction_details"`}
随时随地看视频慕课网APP

相关分类

Go
我要回答