您好-我一直在关注GraphQL / Prisma教程(https://www.howtographql.com/graphql-js/6-authentication/),但我想知道为什么当一个应用程序架构中的类型已经成为Prisma数据库架构的一部分并且可能已经重新定义它们时,为什么要重新定义它们从那里进口。
该教程给出的答案是“从客户端应用程序隐藏潜在的敏感信息”。这到底是什么意思?为什么我们在“ schema.graphql”和“ datamodel.prisma”中复制定义?因为定义略有不同(即“数据模型”包含类似@unique
的标记)?以及如何隐藏客户端应用程序中的内容?我仍然感到困惑。...
特别是在“ schema.graphql”中
type User {
id: ID!
name: String!
email: String!
links: [Link!]!
}
在“ datamodel.prisma”中,我有
type User {
id: ID! @unique
name: String!
email: String! @unique
password: String!
links: [ Link!] !
}
答案 0 :(得分:2)
该架构没有password
字段,这可能是“ 隐藏潜在敏感信息”的含义。
在任何API中,这都是常见的做法,即不从持久性存储中返回所有数据。