【问题标题】:golang appengine outgoing jsongolang appengine传出json
【发布时间】:2015-11-25 07:54:34
【问题描述】:

所以我用 go endpoints 包运行 golang appengine ...

我使用结构来编组和取消编组我的 json 传入请求和传出响应..

type BusinessWorker struct {
    Wid   string `json:"wid" datastore:"Worker_id" endpoints:"req,desc=Worker id. string value"`
    Phone string `json:"phone" datastore:"Phone" endpoints:"req,desc=Worker phone number. string value"`
}

所以你可以在我验证数据后看到这个 obj 保存或加载到数据存储区..

我的问题是.. 在很多情况下,我不想对保存在数据存储中的所有数据进行响应。是否有某种属性可以提供给我不想仅在传入请求中包含在响应中的参数?

它看起来很初级..我找不到它..?

【问题讨论】:

    标签: json google-app-engine go google-cloud-endpoints


    【解决方案1】:

    也许您想尝试以下一种或几种方法的组合:

    • “-”的标记,以便忽略该字段。例如json:"-"
    • omitempty 可以包含在您的 'json:' 中,并且会导致该字段不包含在生成的 json 中。因此,您可以在序列化为 json 之前将要隐藏的字段设置为 nil。例如json:"myName,omitempty"
    • 复制器 - 有一些项目,例如:jinzhu's copier,可以让您将实体复制到简化结构,或者您可以滚动自己的结构。 (JSON 解编组和编组的组合可以产生类似的结果)。

    有关 JSON 包的更多详细信息,请参阅Golang Json marshal docs

    【讨论】:

    • 密码字符串 json:"password,omitempty" datastore:"Password" endpoints:"req,desc=The business password" 这是我使用的,但参数仍然包含在 json 中 ..
    猜你喜欢
    • 2014-06-11
    • 1970-01-01
    • 1970-01-01
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    • 2017-03-12
    • 2014-06-27
    • 1970-01-01
    相关资源
    最近更新 更多