当前位置: 代码迷 >> Web前端 >> REST了解
  详细解决方案

REST了解

热度:137   发布时间:2012-09-05 15:19:34.0
REST理解

HTTP1.1 2000年 Roy Fielding Apache,Adobe

Representational state transfer : 表现性状态转移

?

  1. 客户端用url去访问一个资源,服务器端返回该资源的信息
  2. 客户端也可以通过url去触发一个动作,进行状态转移,状态信息在url请求和响应中包含,服务器端不保存状态。比如用户访问/login,服务器端返回一个cookie,表示当前用户的状态已经由 not logged in 转变成logged in ,用户接下来的请求都带上这个cookie信息,服务器就能识别该用户已经登陆了,服务器端不保存用户的登陆信息。常见的服务器端保存用户信息的形式:通过jsp的session对象保存loggedIn = true),通过数据库保存当前登录的用户信息等等。
  3. 状态转移之后,用户通过同一个url访问同一个资源,得到的响应可能不一样了,因为状态变了。
使用REST设计,简单,可扩展性好。
  1. 简单,用url标识一个资源,发起一个动作;比soap rpc等复杂协议简单得多
  2. 可扩展性好,服务器端无状态、可以灵活部署。