我正在实现简单的社交媒体api。每个Post
对象都有一个字段userId
-标识符,可用于从数据库中提取User
对象(帖子的作者)。
当客户端应用程序要求发帖时,我应该照原样还给我Post
对象,并提供一种方法来检索User
并给定userid
或准备已经包含完整用户对象的对象吗?
变体1:{"content":"cool post",userId:1}
变体2:{"content":"cool post","user": {"name":"Mike"}}
最佳答案
例如,这取决于您希望客户如何使用数据。大多数客户会使用所有User
详细信息,还是大多数客户仅对content
字段感兴趣?
如果要为客户端提供更大的灵活性,请考虑在请求参数中添加一个字段,例如isFullUserInfoNeeded
。根据是否将其设置为true
,您可以使用完整的User
详细信息或仅使用userId
进行响应。