gpt4 book ai didi

json - Martini 中的 JSON 编码错误

转载 作者:IT王子 更新时间:2023-10-29 02:16:27 25 4
gpt4 key购买 nike

当我试图从我的数据库中获取 JSON 数据时,我得到了这个:
{“时间”:“14 年 12 月 11 日 13:42:21”,“:”:“Привет”
{"time":"13:42:25 11.12.14",":":"Эй!"

var time string 
var text string

type chatbetweenusers struct {
Time string `json:"time"`
Text string `json:":"text"`
}

var buffer bytes.Buffer
db, err := sql.Open("sqlite3", "./database.db"); if err != nil {
log.Fatal(err)
}; defer db.Close()

rows, err := db.Query("select time, text from messages;")
if err != nil {
log.Fatal(err)
}
defer rows.Close()


for rows.Next() {
// give a names for every column from query result
err := rows.Scan(&time, &text)
if err != nil {
log.Fatal(err)
}
// add strings to struct
chatitem := &chatbetweenusers{time, text}
log.Println(chatitem)

// format it to JSON!
b, err := json.Marshal(chatitem)
// conver JSON into string to return from Martini
s := string(b[:])
buffer.WriteString(s)
}

return buffer.String()
})

当我试图从数据库中获取其他数据时,我得到了这个:
{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{} {}{}{}{}{}{}{}{}{}{}

var text string
var user1 string

type chatbetweenusers struct {
Text string `json:":"text"`
User1 string `json:":"user1"`
}

var buffer bytes.Buffer
db, err := sql.Open("sqlite3", "./database.db"); if err != nil {
log.Fatal(err)
}; defer db.Close()

rows, err := db.Query("select text, user1 from messages;")
if err != nil {
log.Fatal(err)
}
defer rows.Close()


for rows.Next() {
// give a names for every column from query result
err := rows.Scan(&text, &user1)
if err != nil {
log.Fatal(err)
}
// add strings to struct
chatitem := &chatbetweenusers{text, user1}
log.Println(chatitem)

// format it to JSON!
b, err := json.Marshal(chatitem)
// conver JSON into string to return from Martini
s := string(b[:])
buffer.WriteString(s)
}

return buffer.String()
})

当我在 JSON 中组合其他数据时会发生什么?我尝试了所有可能的方法,但这无法正常工作。

最佳答案

考虑您定义结构的方式。

第一种情况:

type chatbetweenusers struct {
Time string `json:"time"`
Text string `json:":"text"`
}

与文本关联的标签语法错误。应该是:

    Text string `json:"text"`

第二种情况:

type chatbetweenusers struct {
Text string `json:":"text"`
User1 string `json:":"user1"`
}

与这两个标签关联的语法是错误的。它们应该是:

    Text string `json:"text"`
User1 string `json:"user1"`

这是一个 Playground 示例:https://play.golang.org/p/rirtTsTVWT

关于json - Martini 中的 JSON 编码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27756856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com