RESTful基础知识

1.API 应用程序接口

一些预定义的函数,或指软件系统不同组成部分衔接的约定。
提供应用程序与开发人员基于某软件或硬件访问一组例程的能力,无需访问源码,无需理解内 部工作机制的细节。

2.应用接口

把系统的功能作为服务暴露给外部的其他应用使用,需要把系统中的服务作为API接口暴露出去,一般分为公共接口和私用接口

3.Web技术的发展阶段

静态内容阶段:研究机构使用,web由大量的静态HTML文档组成
CGI程序阶段:web服务器增加了一些编程API,提供动态变化内容
脚本语言阶段:服务器端出现了ASP、PHP、JSP、ColdFusion等支持session的脚本语言技术
浏览器端出现了JavaApplet、JavaScript等技术
瘦客户端应用阶段:服务器端出现了独立于web服务器的应用服务器。同时出现了web MVC开 发模式。
RIA应用阶段:DHTML+Ajax,动态更新页面中的局部内容

4.前后端分离

不只是开发模式,也是web应用的一种架构模式
优点:
1.前后端责任清晰,后端专注于数据上,前端专注于视觉上。
2.无需等待对方的开发工作结束,提高开发效率。
3.可应对复杂多变的前端需求。
4.增强代码可维护性。

5.RESTful风格

一种设计API的模式,最常用的数据格式是JSON

6.RESTful设计

1.网络上的所有事物都被抽象为资源
每个资源都有一个唯一的资源定位符URI,每个URI代表一种资源resource,不能有动词,只能有名词
2.资源状态转换
互联网通信协议HTTP协议,是一个无状态协议
3.使用统一接口
REST要求,必须通过统一的接口来对资源执行各种操作
get:从服务器取出资源
post:在服务器新建一个资源
put:在服务器更新资源
patch:在服务器更新资源,客户端提供改变的属性
delete:从服务器删除资源
head:获取一个资源的元数据
options:获得客户端针对一个资源能够实施的操作

 返回值
 collection/resource

 HTTP响应状态码

4.同一个资源具有多种表现形式xml,json
   HTTP请求的头信息中用Accept和Content-Type字段指定,对“表现”的描述。
   accept:application/json
   content-type:application/json

   Accept属于请求头,Content-Type属于实体头
   Accept代表客户端希望接受的数据类型
   Content-Type代表发送端发送的实体数据的类型

你可能感兴趣的:(java)