SpringCloud OpenFeign用户转发在请求头中添加用户信息 微服务内部调用

介绍

在微服务架构中,用户信息通常是通过请求头(HTTP headers)在服务间传递的,以便让下游服务能够识别请求来自于哪个用户,并执行相关的授权、认证等操作。在使用 OpenFeign 进行服务间调用时,我们可以通过在请求头中传递用户信息来实现这种需求。

OpenFeign中提供了一个拦截器接口,所有由OpenFeign发起的请求都会先调用拦截器处理请求

创建请求拦截器

java 复制代码
@Configuration
public class OpenFeignConfig {

    @Bean
    public RequestInterceptor userInterceptor(){
        return new RequestInterceptor() {
            @Override
            public void apply(RequestTemplate requestTemplate) {
                requestTemplate.header("user-id","123456");
            }
        };
    }
}

其他微服务获取值

java 复制代码
@GetMapping("/list")
public List<Goods> list(@RequestHeader(value = "user-id") String userId){
    System.out.println("我被调用用户:"+ userId);
  return  goodsService.list();
}
相关推荐
wydxry7 分钟前
MOE架构详解:原理、应用与PyTorch实现
人工智能·pytorch·架构
橘子编程10 分钟前
SpringMVC核心原理与实战指南
java·spring boot·spring·tomcat·mybatis
Goboy31 分钟前
Java 使用 FileOutputStream 写 Excel 文件不落盘?
后端·面试·架构
Dragon online33 分钟前
数据仓库深度探索系列:架构选择与体系构建
大数据·数据仓库·分布式·架构·spark·大数据架构·数仓架构
Goboy41 分钟前
讲了八百遍,你还是没有理解CAS
后端·面试·架构
程序猿小D1 小时前
Java项目:基于SSM框架实现的校园活动资讯网管理系统【ssm+B/S架构+源码+数据库+毕业论文+远程部署】
java·数据库·mysql·spring·毕业设计·ssm框架·校园活动
麦兜*1 小时前
大模型时代,Transformer 架构中的核心注意力机制算法详解与优化实践
jvm·后端·深度学习·算法·spring·spring cloud·transformer
树獭叔叔1 小时前
Python 多进程与多线程:深入理解与实践指南
后端·python
阿华的代码王国1 小时前
【Android】PopupWindow实现长按菜单
android·xml·java·前端·后端
数据要素X1 小时前
【数据架构08】数字化转型架构篇
大数据·数据库·数据仓库·架构·数据库架构