久趣下载站

当前位置: 首页 » 游戏攻略 » 集成和解析租户源码

集成和解析租户源码



一、集成

1、首先需要引用安装包。

2、配置租户key。

3、在代码中写入所有租户,也可以在配置文件或数据库中定义所有租户。

4、开启租户。

5、配置租户中间件。

6、最后访问服务会报错:

在源码中此处报错了:可见,它解析到了请求中的租户信息,但是拿这个信息去和系统中的租户信息进行匹配时没有找到。



二、租户源原码解析

1、从中间件UseMultiTenancy()开始切入。

在该方法中注入了一个中间件:MultiTenancyMiddleware,在该方法中有一个方法InvokeAsync。

进入_tenantConfigurationProvider的实现TenantConfigurationProvider中,查看GetAsync()方法。

在该方法中只做了两件事。

一是从请求头中解析租户信息:TenantResolver.ResolveTenantIdOrNameAsync()。

解析租户信息是从我们注入的几个类中依次解析直到拿到租户信息,有从请求头,有从cookie中。

我登录时就是在请求头中,HeaderTenantResolveContributor中可以解析到。

二是将解析出的租户信息与系统中配置的租户信息匹配:await FindTenantAsync(resolveResult.TenantIdOrName)。

其中,TenantStore就来源我们系统开始配置的AbpDefaultTenantStoreOptions类。

猜你喜欢
本类排行