gpt4 book ai didi

android - 通过 REST API 处理集合关系的最佳实践是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 22:31:36 25 4
gpt4 key购买 nike

这是我的第一个问题,所以就在这里:)

我正在使用 Android 开发消息应用程序,该应用程序具有由 MongoDB 数据库支持的 Node.js Express 后端。我目前有 2 个集合模型:用户消息,其中消息架构如下所示:

var messageSchema = mongoose.Schema({
source: {type: Schema.Types.ObjectId, ref: 'User', required: true},
destination: {type: Schema.Types.ObjectId, ref: 'User', required: true},
text: {type: String, required: true}
});

我的问题是我是否应该通过 API 返回消息对象:

{source: <objectId>, destination: <ObjectId>, text: 'Hello World'}

或如:

{source: {username:'David', password:'abcd'}, destination: {username:'Jeff', password: 'aaaa'}, text: 'Hello World'}

换句话说:引用的字段应该在服务器端填充/解析,还是应该由客户端决定?

谢谢并欢呼!

最佳答案

我的两分钱:

ObjectId 是数据库的产物,而不是应用程序的产物。向用户展示这些有时(并不总是)是一种气味。无论是否,这取决于您和您对该领域的了解。

至于什么是最好的,这取决于您的用例。是否存在用户只想知道 ID 的用例?我想他们至少会想要其中之一。如果是这种情况,那么我将实现两种资源,一种用于获取源,一种用于获取目的地。

如果用户总是想要两者,或者大部分时间都想要两者,请返回两者,或者再次添加另一个提供此功能的资源。

如果您确实返回两​​者,您将根据什么来过滤该集合?某种标识符、分页还是只返回数据库中的所有内容?

关于android - 通过 REST API 处理集合关系的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36340261/

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