写点什么

系列文章——Web API 从开始到结束

  • 2015-02-28
  • 本文字数:1097 字

    阅读完需:约 4 分钟

介绍

为 Web 设计、实现和维护 API 不仅仅是一项挑战;对很多公司来说,这是一项势在必行的任务。本系列将带领读者走过一段旅程,从为 API 确定业务用例到设计方法论,解决实现难题,并从长远的角度看待在 Web 上维护公共 API。沿途将会有对有影响力的人物的访谈,甚至还有 API 及相关主题的推荐阅读清单。

内容

从商业角度探讨API 设计

本文是Web API 设计系列的第一篇文章,作者 Matt McLarty从商业角度探讨了 API 的设计,无论它是否是开放式并且公开发布的。本篇论及了让 API 反映出业务价值的重要性,论述了在业务系统中应当使用的数据类型,并从 Amazon 和 Twilio 的成功中学习他们的经验。

与HAL 的创造者Mike Kelly 的一次访谈

作为Web API 系列文章的一部分,Mike Amundsen 与 Mike Kelly进行了一次访谈,谈论了他创建 HAL 背后的原因,以及他在这三年来与 web 开发者和 API 社区交流的经验。

Web API 设计方法论

Mike Amundsen在本文中为读者简单介绍了在他的书籍《RESTful Web APIs》中所谈到的设计方法论,使用这种方法论的 API 设计将能够同时利用到 HTTP 与 Web 这两方面的功能。

实现超媒体

在本文中, Steve Klabnik将讨论四种关于超媒体在真实情况中的实现场景:在图片链接中使用超媒体(你很可能已经使用过这种方式了)、GitHub 是如何使用 Link 头信息实现分页的、在例如 iOS 这样的受限系统中使用超媒体,以及 Balanced 是如何使用超媒体理论开发产品的故事。

与Roy Fielding 谈论版本化、超媒体以及REST

Roy FieldingMike Amundsen进行了一番对话,谈论的话题包括Web的版本化、为什么在他的REST定 **** 义中超媒体是必不可少的、设计一个能够适应未来变化的网络软件的过程、以及在设计能够在几十年之后继续可用的软件时会遇到的种种挑战等等。

有关REST 知识的阅读清单

在圆满地完成了我们的第一期Web API 系列之后, Mike Amundsen为那些希望进一步学习设计、实现及维护 Web API 相关知识的读者推荐了一些书籍。

本系列文章管理者

Mike Amundsen是一位国际知名作者和讲师,他的足迹踏遍全球,为人们讲解各种方面的知识,包括分布式网络架构、Web 应用程序开发和其它主题。在 Amundsen 担任 API Academy 的架构总裁的期间,他在北美的各处为人们传授 API 架构与设计实践的相关知识。在过去 15 年间,他编写了大量与编程相关的书籍与论文。最新的一本书是与 Leonard Richardson 合著的《RESTful Web APIs》,已在 2013 年问世。他的另一本著作《使用 HTML5 及 Node 创建超媒体 API》(2011)作为创建基于超媒体的商业应用的经典书籍,受到广泛赞誉,其内容也经常为人所引用。

查看英文原文: Article Series: Web APIs: From Start to Finish

2015-02-28 15:215142
用户头像

发布了 428 篇内容, 共 185.8 次阅读, 收获喜欢 39 次。

关注

评论

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

你敢相信?我用了3个月成功破茧成蝶,从简历被拒到收割8个大厂offer

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

Pulsar VS. Kafka(1): 统一的消息消费模型(Queue + Stream)

Apache Pulsar

kafka 架构 云原生 Apache Pulsar 消息中间件

不可思议,阿里巴巴首发:Java核心框架指导手册,竟1小时点击量破千万

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

Apache Pulsar 与 Apache Kafka 在金融场景下的性能对比分析

Apache Pulsar

大数据 kafka 架构 云原生 Apache Pulsar

遇到了几道关于作用域的前端小题

空城机

JavaScript 大前端 11月日更

明道云对接企查查,一键矫正客户信息

明道云

区块链技术革命才刚刚开始

CECBC

区块链和人工智能是否可以保护森林不再被砍伐?

CECBC

flutter中的列表的性能优化前奏

坚果

flutter 11月日更

Go语言学习查缺补漏ing Day3

Regan Yue

Go 语言 11月日更

调优达到上限?这份尊享版性能实战套餐,让你领先别人好几个级别

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

🏆【Alibaba中间件技术系列】「RocketMQ技术专题」让我们一起实践RocketMQ的服务搭建及配置操作

码界西柚

RocketMQ 11月日更 Apache RocketMQ 集群搭建

Pulsar VS. Kafka(2): 以Segment为中心的架构

Apache Pulsar

kafka 架构 分布式 Apache Pulsar 消息中间件

第四模块总结

张靖

架构训练营

主客体建模法

少个分号

真香!Github一夜爆火,阿里性能优化不传之秘终于开源

热爱java的分享家

Java 程序人生 性能优化 编程语言 经验分享

【LeetCode】N 叉树的最大深度Java题解

Albert

算法 LeetCode 11月日更

微服务架构中,二次浅封装实践

架构 分布式 微服务 技术栈 二次封装

【高并发】深度解析ScheduledThreadPoolExecutor类的源代码

冰河

Java 并发编程 多线程 高并发 异步编程

极客时间算法训练营Week01

jjn0703

算法训练营

堪称数据库的天花板,极致经典的字节内部MySQL宝典意外流出!

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

模块四作业-redis 存储方案设计 - 学生考试试卷

Geek_cb2b43

css布局之全屏布局

Augus

CSS 11月日更

Hive基本理论和常用函数

犟马骝

考试试卷存储方案

天天向上

架构实战营

架构实战营模块四作业

孙志强

架构实战营

字节跳动面试官:SpringBoot统一接口返回和全局异常处理怎么玩?

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

终于有人将Github星标百万的Spring技术精髓收录成册

热爱java的分享家

Java 面试 程序人生 springboot 经验分享

nginx配置详解

小鲍侃java

11月日更

元宇宙:区块链时代的新名字

CECBC

微服务治理之自适应降载

万俊峰Kevin

微服务 微服务架构 服务治理 go-zero Go 语言

系列文章——Web API从开始到结束_REST_Mike Amundsen_InfoQ精选文章