代码之家  ›  专栏  ›  技术社区  ›  sami_analyst

更正HTTP方法以删除文档属性

  •  0
  • sami_analyst  · 技术社区  · 8 年前

    我想用$pull/$unset之类的方法删除文档的属性(在monngodb中)。此操作需要按自己的路线处理。因为这个路由的目的是删除一个属性,所以我被困在两个HTTP方法DELETE和PATCH之间。

    DELETE用于删除整个文档,而PATCH主要用于修改现有属性。我的操作在某种程度上同时具有这两个属性,所以我想知道哪个HTTP方法更适合这个场景。我在网上找不到任何描述或讨论。很高兴听到你们的消息

    1 回复  |  直到 8 年前
        1
  •  1
  •   Elliot Blackburn    8 年前

    这是一个相当主观的问题,但我认为还是值得一试。在我看来,你可以这样做,但你会想让你的请求看起来像选择的方法。

    我个人会选择DELETE,因此我会使URI以文档为目标,然后选择docs属性。这将有效地使您的文档属性看起来像文档本身。如果您有以下代表文章/博客文章的文档。

    {
      "id": "abcdefg",
      "title": "My fantastic article",
      "content": "This is my fantastic article that you're reading",
      "author_username": "elliotblackburn",
      "topic": "wonder"
    }
    

    DELETE /articles/abcdefg 或者删除您可能拥有的属性 DELETE /articles/abcdefg/topic 哪里 abcdefg 表示文档ID。