我想使用 MongoDB 的 ObjectID 来识别 RESTful 调用中的资源。但是,我无法弄清楚如何正确构建 PUT 调用。
据我了解,正确的 PUT 调用路径应包含要修改的资源的 ID。如果具有该 ID 的资源存在,则对其进行修改;如果它不存在,则创建它。后一种情况是我遇到的问题:发出 PUT 请求的客户端不知道 MongoDB 将生成的 ID,因此它不能将 ID 用作请求的一部分。
我想这是使用自动生成的密钥作为资源 ID 时相当常见的情况,但我无法找到有关如何正确处理它的解释。我可以放弃使用 ObjectID 并在文档中使用一些其他值的想法,但这对于某些类型的集合来说效果不佳。其他人是如何做到的?