お世話になっております。
Goのginフレームワークを使って、RESTAPIを作成しています。
以下のコードでPOSTのデータをJsonで受け取りたいのですが、
どうやって受け取ったら良いでしょうか。
go
1package main 2 3import ( 4 "github.com/gin-gonic/gin" 5) 6 7 8func main() { 9 engine := gin.Default() 10 11 // auth 12 authEngine := engine.Group("/auth") 13 { 14 v1 := authEngine.Group("/v1") 15 { 16 v1.POST("/login", Login) 17 } 18 } 19 engine.Run(":3000") 20} 21 22func Login(c *gin.Context) { 23 // ここでPOSTDATAを受け取りたい。 24 25}
https://nansystem.com/gin-get-post-json-form/
go
1 s := c.PostForm("str") 2 n := c.PostForm("num") 3 b := c.PostForm("bool")
このようにすれば一つひとつは取れるようなのですが、Jsonで受け取りたいです。
https://qiita.com/rin1208/items/3bde235cce4e578e15be
go
1type Alice struct { 2 Id string `json:"id"` 3 Name string `json:"name"` 4} 5//curl -X POST -H "Content-Type: application/json" -d '{"ID":"1", "Name":"hoge"}' localhost:8080/post 6//curlの例 7func post (c *gin.Context){ 8 var hoge Alice //alice型の変数の定義 9 c.BindJSON(&hoge)//hogeに受け取ったJsonを代入 10}
またこのように、構造体を定義すればできそうなのですが、
構造体を定義しないで、受けたPOSTをJSONにしたい場合はどうすればよいのでしょうか。
初歩的な質問で申し訳ありませんが、何卒よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。