@FeignClient微服务间的token传递两种解决办法

1,如果是springcloud网关控制权限,只需要在网关写过滤器校验,如果token校验没问题,分发的其他微服务都可以访问,至于怎么用网关校验微服务见:SpringCloud利用网关拦截做Token验证(JWT方式)

2,如果是springboot之间没用网关控制,在各服务间调用时,可以用如下方法,很简单

2.1 FeignHeaderInterceptor

注:下面的赋值“token”需要做下获取token动作,将实时获取到的token设置给header

package com.movitech.contract.config;

import com.google.common.net.HttpHeaders;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.springframework.stereotype.Component;

@Component
public class FeignHeaderInterceptor implements RequestInterceptor {
    @Override
    public void apply(RequestTemplate template) {
        template.header(HttpHeaders.AUTHORIZATION, "token");
    }

}

2.2 在@FeignClient接口里添加configuration = FeignHeaderInterceptor.class

2.3 接下来是怎么接收token

首先在请求参数里面加:

控制层获取:

扫描二维码关注公众号,回复: 3535800 查看本文章

猜你喜欢

转载自blog.csdn.net/qq_34707991/article/details/82907634