【AICon】 如何构建高效的 RAG 系统?RAG 技术在实际应用中遇到的挑战及应对策略?>>> 了解详情
写点什么

RESTful Web Services 就是 RESTful API 吗?

  • 2011-03-23
  • 本文字数:842 字

    阅读完需:约 3 分钟

近期,RESTful Web Services 的合作者之一 Leonard Richardson 提出疑问,为何人们不再谈及 Web Service 了呢?

[……] 我发现,现在人们不再使用“Web Service”这一词汇了,人人使用“API”。

恐怕现在说“人们不再使用这个词汇了”还为时尚早,毕竟还是有很多地方使用它,如云和移动计算 Cloud IDE ,以及社交网络等还在使用该词汇。Leonard 的观点应该是“这个词汇不再像以前用得那么频繁了”。

我注意到,人们所使用的词汇呈现交替现象,而现在“Web Service”一词已几乎匿迹了。当我说“Web Service”的时候,人们知道我在说什么,但是这让我感觉自己“Out 了!”就像执拗地在漫天“开源”的世界里使用“免费软件”一词。

他问到,这一微妙变化是否意味着业界一些根本性的、重要的事情的发生呢?同时,众所周知, REST 支持者口中的”Web Service”是有别于 SOAP 社区所说的 Web Service 。那么,这些变化仅在 REST 社区发生吗?SOAP 社区中“Web Service”一词使用频率的下降与 WS-* 使用的明显下降能够简单地挂上钩吗?

不过,Leonard 担心这种变化会不会带来问题?

[我相信] 人们在 2007 年左右不再说“Web Service”是有原因的,但是,将“API”作为一个通用的词汇将会导致软件产品的向更糟糕的方向发展。[……]

那么,“Web Service”一词真正消亡了?被“API”取代了?如果答案是肯定的,那么其隐含着什么呢?会不会因为“API”一词在 Web 中(可能)带来的混淆而导致软件实现更差呢?Leonard 此文的一条评论说到:

我认为,API 不能自描述。明显,并非所有的 Web Service 能做到这一点,但是至少它们有专门用于描述的标准格式。拿我经历的一件有趣的事来说吧,最近一家客户聘请我们使用其 Web Service(不是 API)开发一个应用。它们是 SOAP,却是巴洛克式的,晦涩难懂。他们为何称其为“Web Service”而非“API”也许有其自己的理由。但是,我的确看到很多网站毫不遮掩地吹嘘他们的 API。

所以,不存在绝对的黑与白,很多东西游走于中间的灰色地带。


查看英文原文: Are RESTful Web Services really RESTful APIs?

2011-03-23 22:455353
用户头像

发布了 184 篇内容, 共 76.2 次阅读, 收获喜欢 7 次。

关注

评论

发布
暂无评论
发现更多内容

LeetCode 1048. Longest String Chain

liu_liu

LeetCode

你所不知道的淘宝325秘密

毒手疯波

ios 淘宝 325

【ARTS】Week 1

Amos

ARTS 打卡计划

“数据资产”究竟是“数据”还是“资产”

马踏飞机747

大数据 数据中台 数据治理 数据资产

向往优雅的代码

Janenesome

编码习惯 读书

ARTS 第一周

onee

ARTS 打卡计划

修改Tomcat窗口的名称

阡陌r

Java tomcat 踩坑 实施

Linux如何调试内存泄漏

泰伦卢

c c++ C#

职位拆解:互联网-运营

Taylor

行业资讯 移动互联网 运营 AARRR

ARTS 01 - 为什么写作在远程工作中那么重要?

Calvin

ARTS 打卡计划

leetcode练级-只出现一次的数字

幸福三寸日光

算法 LeetCode js

Python 3.6.1 官方文档练习——初入江湖(三)

小匚

Python python教程

我的 Windows Terminal 配置

FeiLong

Windows Terminal

鄙视链 & 全栈

伯薇

学习 能力提升 全栈

Lucene的Smart CN实现分词、停用词、扩展词

Page

中文分词 lucene 停用词 扩展词 SmartCN

字节跳动:高级人才的五个基本素质

池建强

人才培养

Service Provider Interface介绍

Skysper

spi

Mobileye如何在云上进行深度学习模型训练

Randy

自动驾驶 学习 AI AWS

ARTS week 1

刘昱

Kubernetes 资料集合

倪朋飞

学习 Kubernetes 架构模式

Spring Data R2DBC 入门

稻草鸟人

MySQL WebFlux springboot R2DBC

【应用异常监控利器Sentry搭建与学习笔记】

卓丁

Docker Sertry Fasthttp CI/CD Go 语言

leetcode练级-只出现一次的数字 升级版

幸福三寸日光

算法 LeetCode js

转行程序员浅谈Linux下的多线程编程

WB

Linux 程序员 多线程

John 易筋 ARTS打卡Week 01

John(易筋)

ARTS 打卡计划

游戏夜读 | 刀塔选手比较老吗?

game1night

Java 火焰图

wong

Java flamegraph

手把手透析C语言堆内存申请malloc及扩容realloc

卓丁

c 堆内存管理 heap memory malloc realloc

ARTS打卡 week 1

猫吃小怪兽

ARTS 打卡计划

LeetCode 241. Different Ways to Add Parentheses

liu_liu

LeetCode

我的读书生涯-小学到大学: 没有成长, 只有不断加深的疑惑

lmymirror

人生 读书 经历 半虚构

RESTful Web Services就是RESTful API吗?_SOA_Mark Little_InfoQ精选文章