博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
星巴克REST案例分析读后感
阅读量:3609 次
发布时间:2019-05-20

本文共 777 字,大约阅读时间需要 2 分钟。

     今天收到InfoQ的推荐邮件,看了标题就很感兴趣,花了一些时间一看,果然是很不错的一个案例分析,同时也让自己学到了不少。大致罗列一下看后的一些文章重点内容。案例地址:

    1.通过REST服务请求完成状态迁移,同时合理利用OPTIONS来查看资源操作权限。

    2.合理利用Http Heads来返回资源URI,以及通过ErrorCode来确定操作结果,并且作后处理。

    3.通过返回内容指定后续流程资源定位以及操作来实现流程化。

    4.通过Put报头的两种版本比较标示来防止并发修改。(其实也可以优化来做查询缓存的工作)

    5.使用Atom协议来发布和管理资源(Atom是最适合REST风格服务的数据源格式定义)

    6.URI模版的使用建议,慎用,如果确实能够有把握抽象资源定位。

    7.Auth可以通过轻量级Http Head中的Authentication或者WS-*的方式来实现。(也可以通过https实现)

    总的来说,其实整个案例分析下来以后,可以发现如果要使得服务流程化,那么前提就是数据交互格式统一(XML,Atom),然后利用Http协议作为服务 协议而非承载协议,利用已有的操作约定,报文头部标示和返回的错误码来完成资源状态迁移的工作,同时通过在返回内容中嵌入流程化内容,使得整个流程可以贯 穿。(这里还是简单的流程串联,其实如果在流程规则协议中增加复杂的逻辑定义,则可以实现更为强大的Web workflow)。

    但对于Open API或者类似的REST流程化业务来说,安全其实还是最大的挑战,特别是在对资源的访问控制权限上。当然可以类似于WS-Security提出一套较为安全成熟的方案,但是性能和使用简易性则会大打折扣,也失去了REST本身的优势。

    做一下广告: 是我下周一将会作的一次关于Open API的内部培训的ppt,有兴趣的同学可以看看。

转载地址:http://ssizn.baihongyu.com/

你可能感兴趣的文章
windows10中Python3.7.4安装pygame模块
查看>>
dubbo监控中心搭建
查看>>
windows设置nginx开机自启
查看>>
windowsServer设置tomcat自启
查看>>
centos7安装docker
查看>>
centos7搭建svn
查看>>
TortoiseSVN无法查看日志
查看>>
centos7设置svn开机自启
查看>>
nginx负载均衡配置
查看>>
idea将普通java代码打成jar包
查看>>
java快速读取大数据量的Excel文件,格式为.xlsx
查看>>
将普通maven工程中某一接口改造成dubbo服务
查看>>
k8s集群中其他节点也可以执行kubectl命令
查看>>
使用docker制作tomcat镜像
查看>>
shell脚本读取文件内容,并写出新文件
查看>>
在docker宿主机上运行docker中container中的执行的命令
查看>>
nginx和tomcat的ssl认证使用https协议访问
查看>>
docker使用tomcat部署应用
查看>>
linux服务器之间复制文件
查看>>
k8s集群搭建
查看>>