2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

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:432890
用户头像

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

关注

评论

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

鸿蒙开发:ArkUI实现语音笔记应用布局

chengxujianke

鸿蒙开发:ArkUI实现远程会议应用界面

chengxujianke

鸿蒙开发:ArkUI实现美颜自拍功能

chengxujianke

鸿蒙开发:旅游攻略应用的ArkUI实践

chengxujianke

鸿蒙开发:课程表应用开发实践

chengxujianke

鸿蒙开发:英语词汇学习应用的ArkUI开发实践

chengxujianke

鸿蒙运动开发:计算户外运动步频与步幅,与地图路线绘制

王二蛋和他的张大花

鸿蒙 os

Kmesh v1.1.0 正式发布!官网焕新升级

华为云原生团队

云计算 容器 云原生

AI-Ready TapData:如何基于 MCP 协构建企业级 AI 实时数据中枢?(含教程)

tapdata

实时数据平台 MCP协议 AI+数据 AI数据调用 企业数据中枢

阿里云基础网络技术5篇论文入选全球网络顶会NSDI

阿里技术

阿里云 论文

鸿蒙开发:ArkUI在园林设计类应用中的实践

chengxujianke

玩转C++11多线程:让你的程序飞起来的std::thread终极指南

电子尖叫食人鱼

C#

助力科学智能发展!上海人工智能实验室『AI4S攀登者行动计划』申请持续进行中!

ModelWhale

科学智能 AI4S

鸿蒙开发:ArkUI实现相机滤镜组件的实践

chengxujianke

鸿蒙开发:ArkUI实现儿童早教应用交互界面

chengxujianke

鸿蒙开发:ArkUI 实现早间新闻快速加载与流畅滚动

chengxujianke

边缘云特点、应用实践和发展趋势浅析

天翼云开发者社区

边缘云 天翼云

EMQX Cloud、TDengine Cloud 实现数据互通!联手打造端到端云上大数据解决方案

EMQ映云科技

【CodeBuddy】三分钟开发一个实用小功能之:九宫格图片切割&生成器

jimaks

CSS

鸿蒙开发:基于ArkUI的小说漫画应用界面实践

chengxujianke

鸿蒙开发:今日热点类应用开发实践

chengxujianke

鸿蒙开发:ArkUI实现旅游类机酒预订界面

chengxujianke

鸿蒙开发:ArkUI实现兴趣社群聊天界面

chengxujianke

鸿蒙开发:基于ArkUI的儿童早教钢琴应用实现

chengxujianke

鸿蒙开发:假期日历应用实践

chengxujianke

鸿蒙开发:人才招聘类应用的ArkUI实践

chengxujianke

浅谈企业应用中台的构建

天翼云开发者社区

企业应用中台

鸿蒙开发:政务办理类应用的ArkUI实践

chengxujianke

鸿蒙开发:政务服务类国风文创应用实践

chengxujianke

HarmonyOS NEXT 中级开发笔记:动漫社团社交应用的ArkUI实践

chengxujianke

鸿蒙开发:ArkUI实现图书听书应用界面

chengxujianke

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