Pre Merge pull request !281 from twelvet/N/A

pull/281/MERGE
twelvet 6 months ago committed by Gitee
commit 13ffdc97b3
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

@ -1,7 +1,12 @@
package com.ruoyi.common.security.feign; package com.ruoyi.common.security.feign;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.Collection;
import java.util.Map; import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import com.ruoyi.common.core.exception.base.BaseException;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.utils.ServletUtils; import com.ruoyi.common.core.utils.ServletUtils;
@ -22,6 +27,23 @@ public class FeignRequestInterceptor implements RequestInterceptor
public void apply(RequestTemplate requestTemplate) public void apply(RequestTemplate requestTemplate)
{ {
HttpServletRequest httpServletRequest = ServletUtils.getRequest(); HttpServletRequest httpServletRequest = ServletUtils.getRequest();
// 兼容SpringQueryMap移除params
Map<String, Collection<String>> queries = requestTemplate.queries();
Collection<String> params = queries.get("params");
if (params != null) {
for (String param : params) {
try {
String encode = URLDecoder.decode(param, "UTF-8");
if (encode.equals("{}")) {
requestTemplate.query("params");
}
} catch (UnsupportedEncodingException e) {
throw new BaseException("feign过滤字符失败");
}
}
}
if (StringUtils.isNotNull(httpServletRequest)) if (StringUtils.isNotNull(httpServletRequest))
{ {
Map<String, String> headers = ServletUtils.getHeaders(httpServletRequest); Map<String, String> headers = ServletUtils.getHeaders(httpServletRequest);

Loading…
Cancel
Save