Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
L
leader-base
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
leader-base
Commits
b52f5a0d
提交
b52f5a0d
authored
2月 11, 2025
作者:
yanxin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加openfeign 用户信息透传配置
上级
e694b6de
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
72 行增加
和
0 行删除
+72
-0
FeignConfig.java
src/main/java/com/zzsn/leaderbase/config/FeignConfig.java
+71
-0
CharacterBasicInfoServiceImpl.java
...eaderbase/service/impl/CharacterBasicInfoServiceImpl.java
+1
-0
没有找到文件。
src/main/java/com/zzsn/leaderbase/config/FeignConfig.java
0 → 100644
浏览文件 @
b52f5a0d
package
com
.
zzsn
.
leaderbase
.
config
;
import
com.zzsn.leaderbase.util.AuthUtil
;
import
feign.Logger
;
import
feign.RequestInterceptor
;
import
feign.codec.Encoder
;
import
feign.form.spring.SpringFormEncoder
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.ObjectFactory
;
import
org.springframework.boot.autoconfigure.AutoConfigureBefore
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.boot.autoconfigure.http.HttpMessageConverters
;
import
org.springframework.cloud.openfeign.FeignAutoConfiguration
;
import
org.springframework.cloud.openfeign.support.SpringEncoder
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.context.annotation.Scope
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
@ConditionalOnProperty
(
prefix
=
"spring.profiles"
,
value
=
"active"
,
havingValue
=
"nacos"
)
@AutoConfigureBefore
(
FeignAutoConfiguration
.
class
)
@Slf4j
@Configuration
public
class
FeignConfig
{
@Bean
public
RequestInterceptor
requestInterceptor
()
{
return
requestTemplate
->
{
ServletRequestAttributes
attributes
=
(
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
();
if
(
null
!=
attributes
)
{
HttpServletRequest
request
=
attributes
.
getRequest
();
log
.
info
(
"Feign request: {}"
,
request
.
getRequestURI
());
// 将用户信息放入header中
String
token
=
request
.
getHeader
(
AuthUtil
.
LOGIN_USER_HEADER
);
requestTemplate
.
header
(
AuthUtil
.
LOGIN_USER_HEADER
,
token
);
}
};
}
/**
* Feign 客户端的日志记录,默认级别为NONE
* Logger.Level 的具体级别如下:
* NONE:不记录任何信息
* BASIC:仅记录请求方法、URL以及响应状态码和执行时间
* HEADERS:除了记录 BASIC级别的信息外,还会记录请求和响应的头信息
* FULL:记录所有请求与响应的明细,包括头信息、请求体、元数据
*/
@Bean
Logger
.
Level
feignLoggerLevel
()
{
return
Logger
.
Level
.
FULL
;
}
/**
* Feign支持文件上传
* @param messageConverters
* @return
*/
@Bean
@Primary
@Scope
(
"prototype"
)
public
Encoder
multipartFormEncoder
(
ObjectFactory
<
HttpMessageConverters
>
messageConverters
)
{
return
new
SpringFormEncoder
(
new
SpringEncoder
(
messageConverters
));
}
}
src/main/java/com/zzsn/leaderbase/service/impl/CharacterBasicInfoServiceImpl.java
浏览文件 @
b52f5a0d
...
...
@@ -387,6 +387,7 @@ public class CharacterBasicInfoServiceImpl extends ServiceImpl<CharacterBasicInf
//合并两个对象
oldBasicInfo
.
setSex
(
basicInfo
.
getSex
());
oldBasicInfo
.
setBirthday
(
basicInfo
.
getBirthday
());
oldBasicInfo
.
setNation
(
basicInfo
.
getNation
());
oldBasicInfo
.
setNativePlace
(
basicInfo
.
getNativePlace
());
oldBasicInfo
.
setSchool
(
basicInfo
.
getSchool
());
oldBasicInfo
.
setSchoolSpeciality
(
basicInfo
.
getSchoolSpeciality
());
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论