正在加载...

RESTful API 设计最佳实践-5

[接上篇:RESTful API 设计最佳实践-4][1]**重写HTTP方法**有的客户端只能发出简单的GET 和POST请求。为了照顾他们,我们可以重写HTTP请求。这里没有什么标准,但是一个普遍的方式是接受X-HTTP-Method-Override请求头。**速度限制**为了避免请求泛滥,给API设置速度限制很重要。为此 RFC 6585 引入了HTTP状态码429(too many re...

阅读全文 →


RESTful API 设计最佳实践-4

[接上篇:RESTful API 设计最佳实践-3][1]**只在需要的时候使用“envelope”**很多API象下面这样返回结果: { "data" : { "id" : 123, "name" : "John" } }理由很简单:这样做可以很容易扩展返回结果,你可以加入一些分页信息,一些数据的元信息等-这对于那些不容易访问到返回头的...

阅读全文 →


RESTful API 设计最佳实践-3

[接上篇:RESTful API 设计最佳实践-2][1]**限制API返回值的域**有时候API使用者不需要所有的结果,在进行横向限制的时候(例如值返回API结果的前十项)还应该可以进行纵向限制。并且这个功能能有效的提高网络带宽使用率和速度。可以使用fields查询参数来限制返回的域例如:- GET /ticketsfields=id,subject,customer_name,updated_...

阅读全文 →


RESTful API 设计最佳实践-2

[接上篇:RESTful API 设计最佳实践-1][1]**不符合CURD的操作**对这个令人困惑的问题,下面是一些解决方法:- 重构你的行为action。当你的行为不需要参数的时候,你可以把active对应到activated这个资源,(更新使用patch).- 以子资源对待。例如:GitHub上,对一个gists加星操作:PUT /gists/:id/star 并且取消星操作:DELETE ...

阅读全文 →


RESTful API 设计最佳实践-1

转载来自:http://blog.jobbole.com/41233/**背景**目前互联网上充斥着大量的关于RESTful API(为方便,下文中“RESTful API ”简写为“API”)如何设计的文章,然而却没有一个”万能“的设计标准:如何鉴权?API 格式如何?你的API是否应该加入版本信息?当你开始写一个app的时候,特别是后端模型部分已经写完的时候,你不得不殚精竭虑的设计和实现自己a...

阅读全文 →


QCon 北京开始了

QCon北京今天开始了,听了几场不错的演讲。对于 [淘宝 余锋 的 《erlang开发实践》][1]映像还是蛮深刻的。当然,除了开始关于erlang的哲学和世界观,基本上就没有和erlang相关的东西了,都是再讲一些系统设计相关的。**erlang的世界观**- 世界是并行的- 外物皆独善其身- 万事皆通讯>世界观很新颖,但是却是很正确。正是这种简单直接的世界观,使得erlang的世界非常的直观和...

阅读全文 →


Share Nothing Architecture

**about title**标题是网上早就有了的。而我是在处理实际的问题时候,想到了一些解决方案,然后再通过解决方案去找就发现了它。就直接拿来用了。**question**问题是这样的:1. 以前做企业级应用开发的时候,用得多的是Java,WebServer是Tomcat,Tomcat是采用multi thread 方式的。而企业应用一般用户量不大,主要是要稳定。所以,每次只启动一个tomcat...

阅读全文 →