asp.net-mvc-4 – ASP .Net MVC 4 Authorize和AllowAnonymous

我对这个框架是全新的,我仍然在学习它和C#的基础知识.与此同时,我在阅读书籍时遇到了Authorize和AllowAnonymous属性,我无法理解控制器如何“知道”用户是否正在尝试访问这些方法/操作.该信息存储在哪里?在执行登录方法时是否需要进行特殊处理?

谢谢你的帮助.

解决方法

假设您的应用程序中有某种身份验证设置(表单身份验证,Windows身份验证或OAuth),则登录用户会以cookie的形式在其浏览器中存储令牌.当用户导航您的应用程序时,他们的令牌会随之传递.当Authorize属性应用于您的某个控制器方法时,您的应用程序会检查其令牌,如果它们是具有正确权限的经过身份验证的用户,则允许它们进入,如果不是,则会将它们重定向到您指定的操作.重定向注册/登录页面. AllowAnonymous允许未经过身份验证的用户访问操作或控制器.

简而言之,它基于它从客户端接收的令牌而知道.

至于第二个问题,如果您在制作MVC 4项目时选择了“互联网应用程序”,则会为您构建表单身份验证,除了使用生成登录操作之外,您不需要执行任何操作.如果您希望使用生成代码之外的数据库,则需要实现MembershipProvider和MembershipUser.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....