【.NET 8 实战--孢子记账--从单体到微服务】--简易权限--完善TODO标记的代码
这篇文章特别短,短到可以作为一篇文章的一个章节,那让我们开始吧
一、编写代码
我们在代码中标记了大量的TODO
标记,并且注明了这里暂时写死,等权限和授权完成后再改为动态获取这句话。那么到目前为止和权限有关的代码已经完成了,现在就开始处理这些代码吧。
1.1 封装获取UserId的类
我们在Controllers文件夹下新建BaseController
类,这个类继承ControllerBase
类,然后在BaseController
类中编写用于获取用户id的GetUserId
方法。
using Microsoft.AspNetCore.Mvc;
namespace SporeAccounting.Controllers;
/// <summary>
/// 控制器基类
/// </summary>
public class BaseController:ControllerBase
{
public string GetUserId()
{
HttpContext.Request.Headers.TryGetValue("UserId", out var userId);
return userId.ToString();
}
}
在GetUserId
方法中我们从请求头中获取到UserId,并返回给调用方。
1.2 在Controller中使用
BaseController
类已经编写完成,然后修改所有Controller,让它们都继承BaseController
,之后在标记TODO
的位置调用GetUserId
方法即可。
dbRole.CreateUserId = GetUserId();
三、总结
这篇文章很短吧,希望大家能动手把其他的TODO都来完成。
原文地址:https://blog.csdn.net/gangzhucoll/article/details/143840751
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!