仅使用四种HTTP方法创建任何类型的restful API?
目前我正在尝试构建一个宁静的HTTP后端框架。
我读过一本名为“Restful webservices”的书,它在这个领域开始了一些脑力劳动。
我现在对于为什么资源导向架构是一件好事情有了更大的了解,但仍然有一些我无法理解的模糊部分。我会试着解释一下我的想法,看看是否有人能让我更聪明。
难道没有人说一切都是对象。汽车,钢笔,书籍甚至抽象的东西,如想法和概念都可以成为一个对象。因为单词对象只是人类对“某事”的发明。
难道你也不能说每个“东西”都是一种资源。硬币,计算机甚至债务可能是一种资源。但问题是对谁。债务是一种资源,但不是欠欠债的人,而是欠他欠债的人。与人体残留物相同。它们是资源,但不是为了我们,而是为了大自然,因为它需要平衡 - 进出 - 科学基础(编程)。
资源(对象)似乎是名词。形容词和动词怎么样?实际上似乎所有东西都可以用名词来描述。例如。
形容词:汽车是红色的
名词:汽车颜色为红色
形容词:我累了
名词:我有一种疲倦
动词:我杀了他
名词:我创造了一个杀戮
动词:我亲吻她
名词:我创造了一个吻
这意味着resource = object = noun。从不同的角度看同样的“东西”。
也许有动词和形容词没有名词等同,但那只是人类语言中的一个缺陷,而不是概念本身。
回到开始这一切的原因。
当我真的想到只有4个(我知道还有更多)HTTP动词 - POST,GET,PUT,DELETE - 我觉得它无法创建强大的restful API,因为它们将API限制为基本的CRUD操作。但经过一些阅读和思考后,我意识到一切都只是可以创建,读取,更改或删除的资源。像进出一样,简单的规则,但创造任何东西,但功能强大。
但后来我想,只有“在”和“在外”。也许只有“创造”和“删除”。原因GET和PUT是可以用“创建读取”和“创建更改”替换的动词。
这一切只是我在玩大自然的基本知识。进出,创建和删除。前者已经在编程领域被广泛接受。但后者你没有听到那么多。但如果这是正确的,那么这意味着HTTP Restful API可以用于以正确的方式创建任何东西,而不是通过修改版本(将动词放在uri中,请求正文等),但仅使用POST, GET,PUT,DELETE。
我们只需要将所有方法转换为资源/对象。代替:
result = Books.search("Foo");
我们要思考:
result = Search.create(Books, "Foo");
你怎么看待这件事?
考虑到这一点,是否可以使用四种HTTP方法创建任何类型的restful API?
“创造”和“删除”另一部分自然法则吗?
没有找到相关结果
已邀请:
5 个回复
靛新比比催
*我在理论上说得更多,当然zzzzBov在他关于HTTP规范的帖子中是正确的。
厦惫
但是,我不确定这种映射是否特别有价值。
号拳藐孔妇
拈吉勉犬姆
,
,
等等。 你有
。 作为必须为SOAP和RESTful Web服务构建,维护和编码的人,请自己(以及其他所有人)帮忙,并使用REST。
锑寝粒