Rest API - representational state transfer
Representation的意思是,请求的返回是具象的,有具体格式和内容的,比如请求一个图片格式,它会返回一个图片格式,请求html,则会返回html格式,而不是一些没有格式的看不懂的内容。
上图是一般情况的http访问,REST是基于HTTP,但一般不请求html格式,而是如下图:
有method和parameters,返回格式一般是REST格式,JSON,XML等。
一种基于http的web api访问方式。例如:
从图中我看到,我们请求的server是map.google.com, 请求的资源是maps/api/geocode/json,条件是address=chicago&sensor=false,它会返回一个json格式的key:value。
我们一般讲google api,youtube api指的就是这种REST API。
https://cloud.google.com/blog/products/application-development/rest-vs-rpc-what-problems-are-you-trying-to-solve-with-your-apis
如果效率更重要而且通信双方是可控的,则选择rpc;
如果为了将来兼容或与其他团队合作,则选择REST,HTTP。