当前位置: 首页 > 知识库问答 >
问题:

Restful HTTP API模式

乐正焕
2023-03-14
POST|GET|PUT|DELETE /items

在这里,我必须使用GET/items?status=approvided来获取所有已批准的项,并使用GET/items?status=pending来获取所有挂起的项。也许GET/items会在默认情况下为我获得所有已批准的。

但我不知道如何阻止用户将其设置为批准状态。

POST|GET|PUT|DELETE /item_creation_suggestions

当用户建议项目更新和删除,而我要么批准要么不批准时,情况也是如此。

我是Restful设计的新手,所以所有的反馈和建议都将不胜感激!

共有1个答案

田翰林
2023-03-14

第一个听起来不错。

post/items应创建一个新项,并可能返回202接受状态。
get/items应返回所有已批准的项。
get/items?status=pending应将挂起的项返回给具有正确权限的用户。
put/items/[id]使用指定新状态的请求正文更改状态。
delete/items/[id]删除项。

最后,您需要决定什么对您的API最有意义,但上述听起来总体上是合理的。

 类似资料:
  • 主要内容:介绍,实现,Game.java,Cricket.java,Football.java,TemplatePatternDemo.java在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 主要解决:一些方法

  • 在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 主要解决:一些方法通用,却在每一个子类都重新写了这一方法。 何

  • 在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 主要解决:一些方法通用,却在每一个子类都重新写了这一方法。 何

  • 模板模式 模板对于学习C++的同学,其实并不陌生。函数有模板函数,类也有模板类。那么这个模板模式是个什么情况?我们可以思考一下,模板的本质是什么。比如说,现在我们需要编写一个简单的比较模板函数。 template <typename type> int compare (type a, type b) { return a > b ? 1 : 0; } 模板函数提示我们,

  • 模块 模块是任何健壮的应用程序体系结构不可或缺的一部分,特点是有助于保持应用项目的代码单元既能清晰地分离又有组织。 在JavaScript中,实现模块有几个选项,他们包括: 模块化模式 对象表示法 AMD模块 CommonJS 模块 ECMAScript Harmony 模块 我们在书中后面的现代模块化JavaScript设计模式章节中将探讨这些选项中的最后三个。 模块化模式是基于对象的文字部分,

  • 问题内容: 在Github上查看CoffeeScript的源代码时,我注意到大多数(如果不是全部)模块定义如下: 这种模式看起来像是将整个模块包装在一个匿名函数中并调用自身。 这种方法的优点(和缺点)是什么?还有其他方法可以实现相同的目标吗? 问题答案: Harmen的答案是相当不错的,但让我详细说明一下CoffeeScript编译器在何处完成此操作以及原因。 当您使用编译内容时,总会得到如下所示

  • 问题 定义一个算法的结构,作为一系列的高层次的步骤,使每一个步骤的行为可以指定,使属于一个族的算法都具有相同的结构但是有不同的行为。 解决方案 使用模板方法( Template Method )在父类中描述算法的结构,再授权一个或多个具体子类来具体地进行实现。 例如,想象你希望模拟各种类型的文件的生成,并且每个文件要包含一个标题和正文。 class Document produceDocu

  • 简介 模板方法模式定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤。在软件工程中,它是一种软件设计模式,和C++模板没有关连。 实例 事实上,模版方法是编程中一个经常用到的模式。先来看一个例子,某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出来。经过分析之后,这个任务大体上