Skip to content

Dubbo获取Token失败 #984

Open

Description

@TonyWang8904

使用版本:

1.46.0

涉及的功能模块:

sa-token-dubbo3

测试步骤:

  • 我经过以下步骤测试:

我有两个微服务,两个服务之间通过Dubbo进行交互,都引入sa-token-dubbo3依赖

服务A为Consumer,它通过某种渠道能获取到登录的用户Token,将该Token放入attachement,代码如下:

RpcContext.getClientAttachment().setAttachment(SaManager.getConfig().getTokenName(), headers.get("Authorization"));

服务B为Provider,收到服务A调用后需要进行用户鉴权,首先读取Rpc上下文,打印可以看到正确的Token信息

RpcContext.getServerContext().getAttachment(SaManager.getConfig().getTokenName());

接着使用StpUtil.getLoginId获取用户编号,但是提示

cn.dev33.satoken.exception.NotLoginException: 未能读取到有效 token

  • 得出以下结果:

我的理解应该跟HTTP请求一样可以直接获取用户的ID,但是实际并没有读取到Token,是哪边有问题吗?

进行断点排查到SaRequestForDubbo3.java,发现该类返回的全是null,是dubbo模式下不支持StpUtil.getLoginId还是我哪边处理的不对?

请问,是我的理解不对,还是文档出了问题?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions