勇往直前的专栏

写给以后的自己

人人都是 API 设计者:我对 RESTful API、GraphQL、RPC API 的思考

有一段时间没怎么写文章了,今天提笔写一篇自己对 API 设计的思考。首先,为什么写这个话题呢?其一,我阅读了《阿里研究员谷朴:API 设计最佳实践的思考》一文后受益良多,前两天并转载了这篇文章也引发了广大读者的兴趣,我觉得我应该把我自己的思考整理成文与大家一起分享与碰撞。其二,我觉得我针对这个话题...

2019-05-18 10:21:23

阅读数 67

评论数 0

Spring Boot 项目的 API 接口防刷

说明:使用了注解的方式进行对接口防刷的功能,非常高大上,本文章仅供参考 一,技术要点:springboot的基本知识,redis基本操作。 首先是写一个注解类: importjava.lang.annotation.Retention; importjava.lang.annotation...

2019-04-14 10:54:16

阅读数 72

评论数 0

还在重复造轮子?Java开发人员必知必会的20种常用类库和API

介绍 一个有经验的Java开发人员特征之一就是善于使用已有的轮子来造车。《Effective Java》的作者Joshua Bloch曾经说过:“建议使用现有的API来开发,而不是重复造轮子”。在本文中,我将分享一些Java开发人员应该熟悉的最有用的和必要的库和API。顺便说一句,这里不包括框架...

2019-04-06 18:27:39

阅读数 57

评论数 0

我的编码习惯 —— API 接口定义

工作中,少不了要定义各种接口,系统集成要定义接口,前后台掉调用也要定义接口。接口定义一定程度上能反应程序员的编程功底。列举一下工作中我发现大家容易出现的问题: 1. 返回格式不统一 同一个接口,有时候返回数组,有时候返回单个;成功的时候返回对象,失败的时候返回错误信息字符串。工作中有个系统集...

2019-03-04 11:15:44

阅读数 40

评论数 0

如何设计一个良好的接口?

在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性、接口的稳定性、接口的跨域性、接口的协议规则、接口的路径规则、接口单一原则、接口过滤和接口组合等诸多因素,本篇文章将简要分析这些因素。 一 规范性建议 1.职责原则 在设计接口时,必须明确接口的职责,即接口类型,...

2019-03-01 08:27:42

阅读数 51

评论数 0

为什么RESTful很糟糕?

周六晚上,RESTful发明人罗伊悄悄来到了咖啡馆,他想看看自己引以为傲的RESTful到底用得怎么样。  (RESTful的故事参见《RPC发展简史》) 靠着门的那张桌子有一帮人,他们居然还在讨论老掉牙的Java RMI,似乎遇到了什么技术难题。  看来无论是什么技术,都会有非常古老的遗留...

2018-12-24 21:45:50

阅读数 494

评论数 3

跟着 Github 学习 Restful HTTP API 的优雅设计

近几年提供 HTTP API 服务的公司越来越多,许多公司都把 API 作为产品重要的一部分,作为服务提供出去。而微服务的兴起,也让企业内部开始重视和频繁使用 HTTP API 。好的 HTTP API设计容易理解、符合 RFC 标准、提供使用者便利的功能,其中经常被拿来作为教科书典范的当属 G...

2018-12-21 10:27:46

阅读数 322

评论数 0

有点长的 Java API 设计清单

在设计Java API的时候总是有很多不同的规范和考量。与任何复杂的事物一样,这项工作往往就是在考验我们思考的缜密程度。就像飞行员起飞前的检查清单,这张清单将帮助软件设计者在设计Java API的过程中回忆起那些明确的或者不明确的规范。本文也可以看作为“API设计指南”这篇文章的附录。 我们还准...

2018-12-16 21:11:36

阅读数 206

评论数 0

如何设计优雅的API

导读:互联网的发展、Web 应用的整合、移动端的繁荣都离不开 Web API 这一幕后英雄的鼎力相助,本文就如何优雅的设计 Web API 从作者自我经验方面做出介绍,并通过举例对它们进行深入剖析, 最后总结出适用于 Web API 各个方面的普遍性规律。 一、设计优美的 Web API  ...

2018-12-01 21:12:38

阅读数 128

评论数 0

为什么前后端分离了,你比从前更痛苦?

你有没有遇到过: 前端代码刚写完,后端的接口又变了。 接口文档永远都是不对的。 测试工作永远只能临近上线才能开始。   为什么前后端分离了,你比从前更痛苦? 前后端分离早已经不是新闻,当真正分离之后确遇到了更多问题。要想解决现在的痛,就要知道痛的原因: 为什么接...

2018-11-08 09:19:17

阅读数 233

评论数 0

springboot整合flowable

一 官方提供的war包 从flowable.org网站下载.zip文件后,可以在wars目录下找到REST应用。要运行这个WAR文件,需要一个servlet容器,例如Tomcat、Jetty等。 使用Tomcat的步骤如下: 下载并解压缩最新的Tomcat zip文件(在Tomcat网站...

2017-12-28 14:12:00

阅读数 9818

评论数 5

微服务RESTful 接口设计规范

1、RESTful发展背景及简介 网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备......)。因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现"APIFirst&am...

2017-06-29 09:51:28

阅读数 28775

评论数 0

【REST】REST和JAX-RS相关知识介绍

REST REpresentational State Transfer;代表性状态传输、具象状态传输 REST定义了应该如何正确地使用Web标准,例如HTTP和URI。REST并非标准,而是一种开发 Web 应用的架构风格,可以将其理解为一种设计模式。   REST关键原则 1、为所有...

2017-04-10 14:22:11

阅读数 434

评论数 0

RESTful Web 服务 - Java (JAX-RS)

JAX-RS 表示用于 RESTful Web 服务的 Java API。JAX-RS 是一种基于 Java 的编程语言 API 以及为创建 RESTful Web 服务提供支持的规范。2.0 版本发布于 2013 年 5 月 24 日。从 Java SE 5 开始大量使用 JAX-RS 注释以简...

2017-03-09 11:28:01

阅读数 340

评论数 0

RESTful Web 服务 - 安全性

因为 RESTful Web 服务使用 HTTP URLs 路径,因此以保护网站同样的方式维护 RESTful Web 服务是非常重要的。以下是设计 RESTful Web 服务时要遵循的最佳实践。 验证 - 验证服务器上的所有输入。保护服务器免受 SQL 或者 NoSQL 注入攻击。 基于会...

2017-03-09 11:24:55

阅读数 220

评论数 0

RESTful Web 服务 - 缓存

缓存是指在客户端存储服务器响应,以便客户端不需要一次又一次的请求服务器上相同的资源。服务器响应应该有关于如何进行缓存的信息,以便客户端缓存一段时间内的响应或者永远不缓存服务器响应。 下面是可以用来配置客户端缓存的服务器响应头: 编号 头信息 & 描述 1 ...

2017-03-09 11:23:25

阅读数 924

评论数 0

RESTful Web 服务 - 无状态

根据 REST 架构,一个 RESTful Web 服务不应该在服务器上保持客户端状态。这种约束被称为无状态。客户端的职责是传递其上下文给服务器,然后服务器存储这个上下文以处理客户端的请求。比如,由服务器维护的会话是通过客户端传递的会话标示符识别的。 RESTful Web 服务应该遵守这一...

2017-03-09 11:21:07

阅读数 356

评论数 0

RESTful Web 服务 - 方法

正如目前为止我们所讨论的,RESTful Web 服务大量使用 HTTP 动词确定要对指定资源进行的操作。下面的表格演示了常用 HTTP 动词的例子。 编号 HTTP 方法,URI 和操作 1 GET  http://localhost:8080/UserManagemen...

2017-03-09 11:19:28

阅读数 376

评论数 0

RESTful Web 服务 - 寻址

寻址指的是定位存储在服务器上的一个或多个资源。类似于定位某个人的邮寄地址。 REST 架构中的每个资源都通过它的 URI(统一资源标示符)标识。URI 格式如下: <protocol>://<service-name&...

2017-03-09 11:16:17

阅读数 325

评论数 0

RESTful Web 服务 - 消息

RESTful Web 服务使用 HTTP 协议作为客户端和服务器之间的通信媒介。客户端发送一个 HTTP 请求形式的消息,然后服务器按照 HTTP 响应形式的响应。这种技术被称为消息传递。这些消息包含消息数据和元数据,比如消息本身相关的信息。我们来看看 HTTP 1.1 中的 HTTP 请求和 ...

2017-03-09 11:13:47

阅读数 585

评论数 0

提示
确定要删除当前文章?
取消 删除