写点什么

文章:REST 反模式

2008 年 8 月 04 日

好,你已决定在 Web 上开发你的应用。下一步也许是 WS-* 或 REST。这时,你相信应该采用 REST——将它比作其他方法会有多难呢?嗯,正如 Stefan 在本文中所述,使用 HTTP 未必就是很好符合 REST 的。

HTTP 虽不是什么新事物,但人们使用它的方式却五花八门。其中有些做法是符合 Web 设计者的初衷的,但许多并非如此。要为你的 HTTP 应用(无论是面向人类、还是计算机、或同时面向这两者使用的)采用 REST 原则,意味着你要恰好反过来:尽量“正确地”使用 Web,或者说按符合 REST 的方式使用 Web (倘若你不喜欢用对或错来评判的话)。对许多人来说,这的确是一种崭新的方式方法。

他的文章中,他逐一细说了他碰到过的 8 种常见的(并且至少曾负有过责任的)反模式:

  • 全部采用 GET
  • 全部采用 POST
  • 忽视缓存
  • 忽视响应代码
  • 误用 cookies
  • 忽视超媒体
  • 忽视 MIME 类型
  • 破坏自描述性

所有架构风格一样,无论它是用于软件、硬件还是建筑的,知道什么该做、什么不该做是很重要的(若它们直接来自于实践,那更是如此),那样你便可以避免犯跟别人一样的错误——你应当注意你犯下的新错误,并从中吸取教训。

详细内容,请阅读全文 REST 反模式


参与 InfoQ 中文站内容建设,请邮件至 editors@cn.infoq.com 。也欢迎大家到 InfoQ 中文站用户讨论组参与我们的线上讨论。

2008 年 8 月 04 日 07:55395
用户头像

发布了 63 篇内容, 共 22.4 次阅读, 收获喜欢 5 次。

关注

评论

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

自动炒币机器人系统开发|自动炒币机器人APP软件开发

开發I852946OIIO

系统开发

mysql常用命令

Sakura

当开工季遇上采购季,云通信主播教你怎么省心又省钱

阿里云Edge Plus

云通信

融云CEO韩迎:飞信十年珍贵历练,做To B别有取巧的心思

融云 RongCloud

IM RTC 飞信

【回溯算法】组合总和升级版 ...

宫水三叶的刷题日记

LeetCode 数据结构和算法 面试数据结构与算法

基于 Wasm 和 ORAS 简化扩展服务网格功能

阿里巴巴云原生

Docker 容器 微服务 云原生 k8s

终于讲清楚了:深入理解Java 应用程序中 final 关键字的各种使用场景

老王说编程

Java final

使用 Puppet 进行配置管理

信码由缰

DevOps 配置管理

作业 - 第五周

eva

DataPipeline通过华为鲲鹏兼容性认证,以自主科技创新推动中国信息产业进步

DataPipeline

大数据 数据融合

小树量化交易系统开发|小树炒币机器人软件APP开发

开發I852946OIIO

系统开发

用户画像实践

Jackchang234987

火币量化交易系统开发|火币炒币机器人软件APP开发

开發I852946OIIO

系统开发

【邀请有礼】全球视频云创新挑战赛邀请有礼:参与 100% 获得 “壕” 礼,更有机会获得 JBL 音箱、Cherry 机械键盘

阿里云视频云

阿里云 音视频 比赛 音视频开发

从JVM底层原理分析数值交换那些事

云流

Java JVM 架构、

政府区块链招投标市场活跃 “区块链+警务”等多元化领域成​方向

CECBC区块链专委会

当AI开始改造“文房四宝”:腾讯教育的脑洞与逻辑

脑极体

字节资深面试官带你深度剖析:Java面试技术点+互联网面试真题解析

Java成神之路

Java 程序员 架构 面试 编程语言

瓦力量化交易系统开发|瓦力炒币机器人软件APP开发

开發I852946OIIO

系统开发

2021“金三银四”刷爆朋友圈的“Java核心面试知识手册”这波Offer稳了

Java架构之路

Java 程序员 架构 面试 编程语言

寻找被遗忘的勇气(五)

Changing Lin

3月日更

区块链如何助力“养老助老”(下)

茜茜公主

区块链+ 七日更 3月日更

Nginx 模块系统:前篇

soulteary

nginx 动态模块

想看新指标?教你轻松写prober插件

Obsuite

运维 滴滴夜莺 Obsuite prober插件

区块链如何助力“养老助老”?(上)

茜茜公主

区块链+ 七日更 3月日更

“金三银四”面试别慌!最新阿里P8内部Java面试涨薪秘籍!全网最新已开源

Java架构之路

Java 程序员 架构 面试 编程语言

女神节|深情告白季,程序员和他的浪漫

InfoQ写作平台官方

活动专区

Linkerd or Istio?哪个Service Mesh框架更适合你?

xcbeyond

Service Mesh istio 技术选型 Linkerd 3月日更

VMware Workstation

梅花鹿鹿

虚拟机

企业级链表设计思路:

大忽悠

3月日更

舒畅,阿里大牛终于把困扰我多年的「Spring全家桶」讲明白了!十年IT老兵亲述Spring实战经验

Java架构之路

Java 程序员 架构 面试 编程语言

演讲经验交流会|ArchSummit 上海站

演讲经验交流会|ArchSummit 上海站

文章:REST反模式-InfoQ