REST通过两个ID获取资源

REST通过两个ID获取资源,rest,Rest,我有两个实体:文章和用户。用户可以对文章发表评论,但是指定用户只能对指定文章发表一条评论。因此,评论可以通过文章id和用户id来识别 经典的REST GET注释请求是:/comment/:id。但就我而言,我没有评论id,因为它是无用的。我想到/comment/:article\u id/:user\u id或/comment/:article\u id!:用户id获取请求 这种情况下的最佳做法是什么 正如你所说,标准形式是: /comment/{comment\u id} 在你的情况下,我可能

我有两个实体:文章和用户。用户可以对文章发表评论,但是指定用户只能对指定文章发表一条评论。因此,评论可以通过
文章id
用户id
来识别

经典的REST GET注释请求是:
/comment/:id
。但就我而言,我没有评论id,因为它是无用的。我想到
/comment/:article\u id/:user\u id
/comment/:article\u id!:用户id
获取请求


这种情况下的最佳做法是什么

正如你所说,标准形式是:
/comment/{comment\u id}

在你的情况下,我可能会选择:
/user/{userId}/comment/{articleId}
/user/{userId}/article/{articleId}/comment


请注意,这完全是基于我所看到的,而不是任何正式的建议。

正如您所说,标准形式是:
/comment/{comment\u id}

在你的情况下,我可能会选择:
/user/{userId}/comment/{articleId}
/user/{userId}/article/{articleId}/comment


请注意,这完全是基于我所看到的,而不是任何正式的建议。

正如您所说,标准形式是:
/comment/{comment\u id}

在你的情况下,我可能会选择:
/user/{userId}/comment/{articleId}
/user/{userId}/article/{articleId}/comment


请注意,这完全是基于我所看到的,而不是任何正式的建议。

正如您所说,标准形式是:
/comment/{comment\u id}

在你的情况下,我可能会选择:
/user/{userId}/comment/{articleId}
/user/{userId}/article/{articleId}/comment


请注意,这完全是基于我所看到的,而不是任何正式的建议。

我不会将缺少的commentId称为“无用”,因为这种情况正是您需要它的时候。如果可能的话,应该在comments表中创建一个代理主键(没有业务意义,由数据库自动创建),而不是userID+articleID的复合键

这将允许在需求发生变化时/如果需求发生变化时具有更大的灵活性。也许用户将被允许发表更多的评论,或者评论需要被线程化


如果数据库是不可更改的遗留数据库,我同意@Gerino提供的URL,我不会将丢失的commentId称为“无用”,因为这种情况正是您需要它的时候。如果可能的话,应该在comments表中创建一个代理主键(没有业务意义,由数据库自动创建),而不是userID+articleID的复合键

这将允许在需求发生变化时/如果需求发生变化时具有更大的灵活性。也许用户将被允许发表更多的评论,或者评论需要被线程化


如果数据库是不可更改的遗留数据库,我同意@Gerino提供的URL,我不会将丢失的commentId称为“无用”,因为这种情况正是您需要它的时候。如果可能的话,应该在comments表中创建一个代理主键(没有业务意义,由数据库自动创建),而不是userID+articleID的复合键

这将允许在需求发生变化时/如果需求发生变化时具有更大的灵活性。也许用户将被允许发表更多的评论,或者评论需要被线程化


如果数据库是不可更改的遗留数据库,我同意@Gerino提供的URL,我不会将丢失的commentId称为“无用”,因为这种情况正是您需要它的时候。如果可能的话,应该在comments表中创建一个代理主键(没有业务意义,由数据库自动创建),而不是userID+articleID的复合键

这将允许在需求发生变化时/如果需求发生变化时具有更大的灵活性。也许用户将被允许发表更多的评论,或者评论需要被线程化


如果数据库是不可更改的遗留数据库,我同意@Gerino给出的URL,因此您希望特定用户对特定文章发表评论?是的,它将正好是一条评论,因此您希望特定用户对特定文章发表评论?是的,它将恰好是一条评论,因此您希望评论只针对特定用户的特定文章?是的,它将恰好是一条评论,因此您希望评论只针对特定用户的特定文章?是的,它将恰好是一条评论