简介

Feign的拦截器RequestInterceptor

SpringCloud的微服务使用Feign进行服务间调用的时候可以使用RequestInterceptor统一拦截请求来完成设置header等相关请求,但RequestInterceptor和ClientHttpRequestInterceptor有点不同,它拿不到原本的请求,所以要通过其他方法来获取原本的请求

首先创建自定义的RequestInterceptor

1.搭建步骤

@Slf4j
@Component
public class MyFeignInterceptor implements RequestInterceptor {
@Override
public void apply(RequestTemplate template) { ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes(); log.info("===request: {}", template.url());
template.header("aaaa", "bbbb");
}
}

1.1查看结果

  INFO 1 --- [nio-8801-exec-6] c.m.d.client.controller.DemoController   : header: aaaa, bbbb
INFO 1 --- [nio-8801-exec-6] c.m.d.client.controller.DemoController : header: accept, */*

2.执行流程图

自定义Feign拦截器的更多相关文章

  1. SpringMVC 自定义一个拦截器

    自定义一个拦截器方法,实现HandlerInterceptor方法 public class FirstInterceptor implements HandlerInterceptor{ /** * ...

  2. Spring自定义一个拦截器类SomeInterceptor,实现HandlerInterceptor接口及其方法的实例

    利用Spring的拦截器可以在处理器Controller方法执行前和后增加逻辑代码,了解拦截器中preHandle.postHandle和afterCompletion方法执行时机. 自定义一个拦截器 ...

  3. Mybatis自定义SQL拦截器

    本博客介绍的是继承Mybatis提供的Interface接口,自定义拦截器,然后将项目中的sql拦截一下,打印到控制台. 先自定义一个拦截器 package com.muses.taoshop.com ...

  4. Dubbo自定义日志拦截器

    前言 上一篇文章 Spring aop+自定义注解统一记录用户行为日志 记录了 web层中通过自定义注解配合Spring aop自动记录用户行为日志的过程.那么按照分布式架构中Dubbo服务层的调用过 ...

  5. 阶段5 3.微服务项目【学成在线】_day18 用户授权_19-微服务之间认证-Feign 拦截器

    4.2 Feign 拦截器 4.2.1 定义Feign拦截器 微服务之间使用feign进行远程调用,采用feign拦截器实现远程调用携带JWT. 在common工程添加依赖: <dependen ...

  6. springmvc自定义的拦截器以及拦截器的配置

    一.自定义拦截器 Spring MVC也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口. 二.HandlerIn ...

  7. spring自定义注解拦截器的配置

    1.创建注解文件 (文件格式为注解) 这里面什么都不需要写 文件名就是注解名称 如下 是@anno package com.ABC123.anno; import java.lang.annotati ...

  8. struts2自定义Interceptor拦截器

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  9. struts2自定义登录拦截器

    版权声明:本文为博主原创文章,未经博主允许不得转载. (1)配置web.xml,让xml加载struts2框架 <?xml version="1.0" encoding=&q ...

  10. 6.1 自定义abp拦截器示例

    一个简单.基于AbpInterceptor的拦截器示例: using Microsoft.Extensions.DependencyInjection; using System; using Sys ...

随机推荐

  1. Unity 安装的编辑器版本不见了 记录问题

    新的一天打开unity 报错,然后再打开就找不到我之前安装的编辑器版本了 (猜测是我不正常关闭的原因吧,不懂这个) 之前在网上找到过解决办法,后来找不到了.趁现在还记得,记录一下 先把进程停了 再把缓 ...

  2. 【搭建】【转】搭建 yum仓库

    https://blog.csdn.net/wuxingge/article/details/100761637 3.2 服务端部署 1)安装软件程序(createrepo) yum install ...

  3. Maven 中央仓库配置

    Maven 中央仓库配置 Maven 中央仓库地址大全 <!-- 1.阿里中央仓库(首推1) --> <repository> <id>alimaven</i ...

  4. CAS无锁机制

    1. 背景 传统Synchronized锁:悲观,如果没有获取到锁的情况下,会让当前线程变为阻塞的状态,释放CPU执行权,效率非常低. 乐观锁(自旋):本质上没有锁,没有死锁现象,而且效率比较高,不会 ...

  5. .net Core5.0使用IdentityServer4 进行权限控制

    .net Core5.0使用IdentityServer4 进行权限控制 IdentityServer4  ASP.NET Core的一个包含OpenID Connect和OAuth 2.0协议的框架 ...

  6. EL_获取域中存储的值_ List 集合&Map集合值和EL _ empty 运算符&隐式对象 pageContext

    3.获取对線. List 集合. Map 集合的值 1.对線:${域名称,键名.属性名}本质上会去调用对線的 getter 方法 2. List 集合:${域名称.键名[索引]} List list ...

  7. 生产环境出现CPU占用过高,分析思路和定位

    top 定位cpu占比高的pidjps -l 定位具体是后台哪个应用程序ps -mp 进程id -o(自定义格式) THREAD,tid,time 定位当前进程所有线程占用cpu时间高的线程idjst ...

  8. mock数据规则

    Mock数据规则 随机生成100条内的list数据 let Mock = require("mockjs"); let basicData = Mock.mock({ " ...

  9. win 11 VMware workstations b不可恢复的错误(vcpu-2)

    首先检查一下电脑有没有开启CPU虚拟化,我的已经开启了,按照百度的方法去控制面板卸载程序里面,找到VMware 右击更改 弹出的安装程序点修复,,结果修复出错了,显示写入文件D:\vm\glib-2. ...

  10. Stm32设置串口300波特率 2400 4800 9600

    Stm32设置串口300波特率   本文以串口4为例子: 在APB1为72MHz的时钟频率下,是设置不了300波特率的,原因在于 Tx/Rx baud = fck / (16 * reg_value) ...