2014-03-27 48 views
3

在基于MVC的认证例如Visual Studio的OOB形式,当用户注销回传时,为什么使用MVC文章注销?

@using (Html.BeginForm("LogOff", "Account", FormMethod.Post, new { id = "logoutForm" })) { 
      @Html.AntiForgeryToken() 
      <a href="javascript:document.getElementById('logoutForm').submit()">Log off</a> 
     } 

是否有一个原因,这不是普通GET,因为没有数据被送回服务器?

回答

6

注销操作不是幂等的,所以使用POST很好。

GET应该只用于检索资源。注销是一种操作,不会返回特定的资源。

GET请求也可以缓存,保留在浏览器历史记录中,并且可以添加书签。一些无用的功能用于注销。