Ric*_*lls 14 asp.net rest webforms stateless
我见过这个建议......
理想情况下,Web应遵循REST原则并完全无状态.因此,单个URL应标识单个资源,而不必保留每个用户的导航历史记录.
...我读了维基百科页面http://en.wikipedia.org/wiki/REST,这听起来不错,但我不知道如何实际实现它.我在ASP .NET Webforms NOT MVC工作.
例如,在我即将构建的应用程序中 - 我需要我的用户登录才允许他们做任何事情.在他们被允许做很多有用之前,他们必须跳过几个箍 - 比如接受T和C并确认他们的基本细节不变.最后他们被允许做他们真正想要的东西,比如BuyAProduct!
在我看来(我来自Rich客户端的HEAVILY有状态世界),我需要状态来记录他们所做的事情并从中推断他们可以做什么.我不知道如何支持他们(比如)为BuyAProduct URI添加书签.当他们到达书签时,我如何知道他们是否已登录,以及他们是否同意T和C以及他们是否尽职尽责地检查了他们的基本细节?
我喜欢应用程序无状态的想法,部分原因是它似乎完全解决了"当用户点击后退和前进按钮时,我该怎么办?" 我看不出我怎么能让它正常工作.我觉得我错过了一些非常基本的东西.
Dan*_*zey 23
建议不是建议应用程序应该是无状态的 - 这表明应用程序中的资源应该是无状态的.也就是说,名为"www.mysite.com/resources/123"的页面将始终表示相同的资源,无论哪个用户正在访问它,或者他们是否已登录.
(您可能拒绝未登录的用户访问这一事实是一个单独的问题 - 重点是Uri本身不依赖于特定于用户的数据.)
例如,违反此规则的网站类型是您导航到产品页面,通过电子邮件将Uri发送给您的朋友,然后点击它的消息,他们会看到一条消息:"对不起,您的会话已过期"或"此产品不存在"或类似.发生这种情况的原因是因为Uri包含特定于网站上用户会话的内容,并且如果其他用户尝试使用该链接(或稍后的同一用户),则它不再有效.
因此,对于您的应用程序,您仍然需要某种形式的状态,但实现该状态是重要因素.
希望有助于减轻一点光芒!
Dar*_*ler 12
如果你想做Web表单,那很酷.如果你想做REST也很酷.但请注意对神圣事物的热爱,请不要试图遵循使用Web Forms的REST原则.
为了进一步澄清这一点,我不认为webforms是REST的明智选择,因为WebForms所基于的概念模型是您抽象Web的概念模型.它是为了模拟VB开发模型而构建的.
REST包含HTTP和Web应用程序的分布式特性.这两种方法不兼容.
| 归档时间: |
|
| 查看次数: |
7863 次 |
| 最近记录: |