0
点赞
收藏
分享

微信扫一扫

k8s删除node节点的方法

朱悟能_9ad4 2023-07-15 阅读 64
mvc

Program.c

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddControllersWithViews();

builder.Services.AddSession(m => m.IdleTimeout=TimeSpan.FromMinutes(30));//默认20分钟

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseSession();//使用session中间件

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Users}/{action=Login}/{id?}");

app.Run();

Models->Users.cs

namespace Filters_Info.Models
{
    public class Users
    {
        /// <summary>
        /// 用户
        /// </summary>
        public string? Account { get; set; }

        /// <summary>
        /// 密码
        /// </summary>
        public string? Pwd { get; set; }

        /// <summary>
        /// 昵称
        /// </summary>
        public string? NickName { get; set; }
    }
}

Controllers->UsersController.cs

using Filters_Info.Filters;
using Filters_Info.Models;
using Microsoft.AspNetCore.Mvc;

namespace Filters_Info.Controllers
{
    public class UsersController : Controller
    {
        public IActionResult Login()
        {
            return View();
        }

        public IActionResult UserLogin(Users users)
        {
            //redis内存库 session
            if (users.Account == "zhangsan" && users.Pwd == "123456")
            {
                HttpContext.Session.SetString("users", users.Account);
                return View("Edit");
            }
            else
            {
                return View("Login");
            }
        }

        public IActionResult Reginster()
        {
            return View();
        }

        [LoginAuthorize]
        public IActionResult Edit()
        {
            return View();
        }

        [LoginAuthorize]
        public IActionResult List()
        {
            return View();
        }

    }
}

Views->Users->Login.cshtml

@*
    For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
*@
@{
    ViewData["title"] = "用户登录页面";
}
<div>
    <form action="/Users/UserLogin" method="post">
        <div>
            账号:<input type="text" name="Account" atuocomplete="off" />
        </div>
        <div>
            密码:<input type="password" name="Pwd" />
        </div>
        <div>
            <input type="submit" />
        </div>
    </form>
</div>

Views->Users->Edit.cshtml

@*
    For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
*@
@{
    ViewData["title"] = "用户登录编辑页";
}

<div>用户登录编辑页</div>

Views->Users->List.cshtml

@*
    For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
*@
@{
    ViewData["title"] = "用户登录列表页";
}
<div>用户例如列表页</div>

Views->Users->Register.cshtml

@*
    For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
*@
@{
    ViewData["title"] = "用户注册页";
}
<div>用户注册页</div>

Filters->LoginAuthorizeAttribute.cs

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;

namespace Filters_Info.Filters
{
    /// <summary>
    /// 登录授权过滤器
    /// </summary>
    public class LoginAuthorizeAttribute:ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            string? users = context.HttpContext.Session.GetString("users");
            if (users == null)//判断没有登录
            {
                context.Result = new RedirectToRouteResult(
                    new { controller="Users",action="Login"}
                    );
            }
            base.OnActionExecuting(context);
        }
    }
}
举报

相关推荐

0 条评论