dea*_*mon 6 rest wicket web-frameworks
基于GUI的Web应用程序可以构建在GUI组件,Wicket等有状态框架上,也可以构建为RESTful,无状态的方式,仅在客户端上具有GUI状态.
从技术角度来看,REST看起来是正确的方式,因为它利用了http的全部功能,并导致高度可扩展的应用程序.但这需要付出代价.在许多情况下,复杂的GUI将需要客户端上的JavaScript应用程序.如果应在客户端维护状态,则必须保持在同一页面并仅重新加载部分.或者你必须使用隐藏的iframe技巧.有时在服务器上有像购物车一样的伪资源,以启用RESTful设计.你必须保持多步对话的中间状态等等......
如果我环顾四周,很少有RESTful GUI Web应用程序.这是因为历史原因还是RESTful设计在常见情况下无效?
如果我环顾四周,很少有RESTful GUI Web应用程序.这是因为历史原因还是RESTful设计在常见情况下无效?
我的回答是主观的,但在我看来,两个主要障碍阻碍了RESTful的发展:
在许多情况下,复杂的GUI将需要客户端上的JavaScript应用程序.
在我看来,无论服务器端实现如何,复杂的,丰富的客户端体验都需要一些深入的JavaScript.
您必须保持在同一页面并仅重新加载部件,
这是一种与传统请求/响应整页到完整页面设计截然不同的设计.每种设计都有自己的权衡.REST设计在AJAX调用中运行得特别好,但客户端代码需要精心设计才能保持可维护性和健壮性.
具有胖客户端的RESTful服务器:
ViewStates但是,正如您所提到的,胖客户端有缺点:
恕我直言,RESTful GUI 设计非常高效。您可以利用许多功能,而无需额外的工作来支持极端情况,例如用户重新提交信息、浏览器历史记录(后退和前进)、多个选项卡和窗口。如果我没记错的话,这个网站使用 RESTful UI。
| 归档时间: |
|
| 查看次数: |
4475 次 |
| 最近记录: |