用于动态json的Golang结构,返回空值

问题描述

我尝试从数据库“蟑螂”中获取动态json数据,但在golang上执行时却得到了空值,

数据库中的内容数据类型为JSONB,这里是我的golang结构

注意:这里Content的值是Dynamic Json(每个内容都有不同的json值)。

如果您对此有任何想法,请告诉我谢谢。

type Result struct {
    Topic       string
    MessageType string
    Sender      string
    Content     interface{}
}
type SubscriberResponse struct {
    Result []*Result
}

,这里是我的 golang服务

var results []*Result
var subscriberResponse *SubscriberResponse

sql := (`SELECT topic,message_type,sender,content FROM users`)
rs,err := s.db.QueryContext(ctx,sql)
if err == nil {
    for rs.Next() {
        result := &Result{}
        rs.Scan(
            &result.Topic,&result.MessageType,&result.Sender,&result.Content)
        results = append(results,result)
    }
    subscriberResponse = &SubscriberResponse{
        Result: results,}
    return subscriberResponse,nil
}
return nil,err

以及 golang服务

的结果
{
"Result": [
    {
        "Topic": "a2","MessageType": "b2","Sender": "c2","Content": null
    },{
        "Topic": "a3","MessageType": "b3","Sender": "c3","Content": null
    }]
}

数据库上执行该查询时,会在此处获得其他信息 databse result

欢迎提出任何想法或修改

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...