gpt4 book ai didi

go - 转换/隐藏结构中的值

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

我有一个在数据库中创建用户并返回他的信息(使用结构)的应用程序。我想将用户模型发送到客户端(Web 服务器的响应),没有密码(或我不希望客户端获得的更多信息)。正确的方法是什么?使用我想发送给客户端的唯一字段创建一个“UIUser”结构并将原始模型转换为该结构?还是用户界面?

当然,如果你能给我一个解决这个问题的例子。

最佳答案

拥有 View 结构通常可能是个好主意,因为您不想将 API 格式与内部表示耦合。无论如何,如果您只是想以懒惰的方式执行此操作并避免序列化密码,您始终可以使用 - json struct 标签:

package main

import (
"fmt"
"encoding/json"
"log"
)

type user struct {
ID int `json:"id"`
Name string `json:"name"`
Pass string `json:"-"`
}

func main() {
u := &user{123, "John", "supersecret"}
b, err := json.Marshal(u)
if err != nil {
log.Fatal(err)
}
fmt.Println(string(b))
}

Playground

关于go - 转换/隐藏结构中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52956655/

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