golang中的JSON解码

所以,我想的东西基础上,例如这里在我的代码,并没有得到数据,但没有任何错误。代码是:


import (

    "io"

    "fmt"

    "net/http"

    "encoding/json"

)


type Credential struct {

    username string `json:"username"`

    password string `json:"password"`

}


func login(res http.ResponseWriter, req *http.Request) {

    if req.Method == "POST" {

        cred := Credential{}

        err := json.NewDecoder(req.Body).Decode(&cred)

        if err != nil {

            panic("can't decode")

        }

        fmt.Println("credentials: " + cred.username + " , " + cred.password)

    }

}

我测试


curl -X POST -H "Accept: application/json" --data "{\"username\":\"x\",\"password\":\"y\"}" 127.0.0.1:8000/login -一世


服务器打印出:


证书: ,


为什么 cred.username 和 cred.password 中没有任何内容?


慕村9548890
浏览 175回答 1
1回答

婷婷同学_

golang 使用字段的第一个字符来声明该结构的公共或私有。所以username改为Username
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go