写点什么

HATEOAS 作为领域特定协议描述的引擎

  • 2009-06-09
  • 本文字数:783 字

    阅读完需:约 3 分钟

要解释清楚 HATEOAS,可是出了名的难缠,为了更为容易的解释它,Nick Gall探讨了 将它作为领域特定协议描述来进行表达这一观点。根据他的说法,HATEOAS 从传统上被描述为:

…着重强调 HATEOAS 要求每个服务器响应都必须不仅包含被请求的数据 - 还必须包含控制信息 (以特殊标记的 URL 形式) 来描述下一个被允许的与服务器交互的集合。正是这一附加的信息 (最小的情况下仅仅是对于更多数据的链接) 将普通的媒体变为了超媒体。

Nick 解释了他是如何以标识–Identifiers (Uri),格式 --Formats (HTML),和协议–Protocols (HTTP) 这种 (IF and P) 的方式来看待 Web 接口 (以及相应的 RESTful 接口) 的。根据他的说法,尽管使用 HATEOAS 的 RESTful 应用可以被看作这三个部件 (IF and P) 的总和,但在理解它的时候将超媒体作为一个领域特定协议描述来思考可能更为合适。他指出了 Jim Webber 的“ Rest 巴克”案例 / 演示,在其中叙述了用超媒体来做协议描述

乍一看这可能很不直观,因为我之前说在万维网里 HTTP 是协议而 HTML 是格式。但是 URL,HTML,HTTP 只是描述领域特定标识,格式,和协议的一般性描述语言。因此,可以把特定的 HTML 页面组织成的 web 想像成一个领域特定协议。

将“超媒体描述协议”这一观念与 WS-BPEL 1.1 规范 WADL 进行比较是不可避免的。他表示:

其基本的差别在于 WS-BPEL 是基于一次性地以带外的方式 (out of band) 预先将整个静态协议和盘托出的概念。而 HATEOAS 是基于逐步进展的描述这一观念,我认为一个更好的术语应当是即时协议描述 (Just In Time)。[…] 我可以说“每个服务器渐进的响应自描述了当前的协议。”

即时协议描述相对于预先描述有利有弊,表现在工具支持以及这些接口的可发现性上面。“超媒体描述协议”是否是考虑HATEOAS 观念的新思路呢,并且它是否更易于理解呢?

查看英文原文: HATEOAS as an engine for domain specific protocol-description

2009-06-09 09:433072
用户头像

发布了 133 篇内容, 共 43.7 次阅读, 收获喜欢 1 次。

关注

评论

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

淘宝/天猫商品快递费用API返回值解析快速指南

代码忍者

pinduoduo API API 性能测试

25个Linux系统性能调优技巧

威哥爱编程

Linux 系统调优

火山引擎边缘智能×扣子,拓展AI Agent物理边界

火山引擎边缘云

1688电商生态新引擎:商品详情API引领行业发展新篇章

代码忍者

pinduoduo API API 性能测试

社区周刊·Vol.182

华为云开发者联盟

开发者 华为云

OCR+PDF解析配套前端工具开源详解!

合合技术团队

#开源 #前端 ODR

国际开发者成为 Apache IoTDB Committer,新视角谈开源经验!

Apache IoTDB

数据库 开源 时序数据库 IoTDB Apache IoTDB

测试流程必须严格执行吗?

老张

软件测试 验收测试 质量保障 流程规范

社交软件红包技术解密(二):解密微信摇一摇红包从0到1的技术演进

JackJiang

即时通讯;IM;网络编程

大数据存储计算平台EasyMR:多集群统一管理助力企业高效运维

袋鼠云数栈

【HarmonyOS】鸿蒙TextPicker日期选择

zhongcx

零信任身份安全的基本原则

芯盾时代

身份安全 零信任模型

MQTT vs HTTP:谁更适合物联网?

EMQ映云科技

物联网 HTTP mqtt emqx

堡垒机价格贵吗?一定要买堡垒机吗?

行云管家

网络安全 堡垒机 数据泄露

揭秘京东商品详情一键获取的API之旅

代码忍者

pinduoduo API API 性能测试

云栖实录 | 大模型驱动,开源融合的 AI 搜索产品发布

阿里云大数据AI技术

大数据 开源 大模型 AI搜索

京东零售数据湖应用与实践

京东零售技术

数据湖 数据

橱窗LED透明屏:展示和广告的新宠

Dylan

广告 制造 LED display LED显示屏 市场

Kafka集群升级项目实施方案,打造高效数据处理平台

敏捷调度TASKCTL

kafka hadoop cloudera 集群 大数据运维

解锁极致性能:Arm Cortex-X925 IPC 提升15%,终端用户体验感再突破

新消费日报

智算基石全栈加速,百度百舸 4.0 的技术探索和创新

百度Geek说

百度 大模型 技术 优化体系

得物一面,都是非常经典的问题

王中阳Go

Go 面试 后端

凹语言执行速度比Go快一倍,体积百分之一

chai2010

golang 编程语言 webassembly 凹语言

凹语言Native后端达到C语言性能

chai2010

编程语言 webassembly 凹语言

Redis桌面管理工具:Redis Desktop Manager for Mac 中文版

你的猪会飞吗

Mac软件下载站 mac破解软件下载

世界第一!华为云图引擎服务GES大幅刷新世界纪录

华为云开发者联盟

华为云 图数据库

部署 LLMs 前如何计算与优化 GPU 内存需求?

Baihai IDP

程序员 AI gpu LLMs

罗格科技:全球税务服务领域初露锋芒 罗格罗拉国际税大模型发布

科技热闻

HATEOAS作为领域特定协议描述的引擎_SOA_Dilip Krishnan_InfoQ精选文章