Commit 850fee3d authored by guozhipeng's avatar guozhipeng

飞书接口优化

parent fc3e445b
...@@ -121,43 +121,42 @@ public class OperateAuthFilter implements Filter { ...@@ -121,43 +121,42 @@ public class OperateAuthFilter implements Filter {
} }
} }
} }
//处理ODATA接口 OData接口仅允许本机访问 只有odata接口需要从cookies中读取参数 //拦截飞书使用的开放的odata接口做特殊处理
if (Pattern.matches("(.*/odata/v4/.*)", uri) && !"127.0.0.1".equals(ip) && !"0:0:0:0:0:0:0:1".equals(ip)) { if (
//拦截openFeishuService开放接口做特殊处理 Pattern.matches("(.*/odata/v4/openFeishuService/.*)", uri) &&
if ( !StringUtils.isEmpty(appKey) &&
Pattern.matches("(.*/odata/v4/openFeishuService/.*)", uri) && appKey.equals(tokenForFeiShu)
!StringUtils.isEmpty(appKey) && ) {
appKey.equals(tokenForFeiShu) if ("/odata/v4/openFeishuService/ApproveFeiShuUserDeptEvent".equals(uri)) {
) { try {
if ("/odata/v4/openFeishuService/ApproveFeiShuUserDeptEvent".equals(uri)) { feiShuController.feiShuUserDeptEvent(request, response);
try { } catch (Throwable e) {
feiShuController.feiShuUserDeptEvent(request, response); throw new BtpException(e.getMessage());
} catch (Throwable e) {
throw new BtpException(e.getMessage());
}
return;//返回结果
} }
if ("/odata/v4/openFeishuService/ApproveEvent".equals(uri)) { return;//返回结果
try { }
feiShuController.event(request, response); if ("/odata/v4/openFeishuService/ApproveEvent".equals(uri)) {
} catch (Throwable e) { try {
throw new BtpException(e.getMessage()); feiShuController.event(request, response);
} } catch (Throwable e) {
return;//返回结果 throw new BtpException(e.getMessage());
} }
if ("/odata/v4/openFeishuService/ApaasLog".equals(uri)) { return;//返回结果
JSONObject jsonObject = new JSONObject(); }
String requestParamStr = request.getReader().lines().collect(Collectors.joining(System.lineSeparator())); if ("/odata/v4/openFeishuService/ApaasLog".equals(uri)) {
log.info("uri:{}, paramStr:{}, isJson:{}", uri, requestParamStr, JsonUtil.isJsonObject(requestParamStr)); JSONObject jsonObject = new JSONObject();
if (JsonUtil.isJsonObject(requestParamStr)) { String requestParamStr = request.getReader().lines().collect(Collectors.joining(System.lineSeparator()));
jsonObject = JSONObject.parseObject(requestParamStr); log.info("uri:{}, paramStr:{}, isJson:{}", uri, requestParamStr, JsonUtil.isJsonObject(requestParamStr));
} if (JsonUtil.isJsonObject(requestParamStr)) {
Result<?> result = feiShuController.addApaasLog(jsonObject); jsonObject = JSONObject.parseObject(requestParamStr);
writeResult(response, result);
return;//返回结果
} }
Result<?> result = feiShuController.addApaasLog(jsonObject);
writeResult(response, result);
return;//返回结果
} }
}
//拦截非本机访问的odata接口从cookies中读取参数做特殊处理(报表)
if (Pattern.matches("(.*/odata/v4/.*)", uri) && !"127.0.0.1".equals(ip) && !"0:0:0:0:0:0:0:1".equals(ip)) {
if (cookies == null || cookies.length == 0) { if (cookies == null || cookies.length == 0) {
Result<Object> wrapResult = Result.error("requestIP=" + ip + " requestURI=" + uri + " odata请求 cookies 不能为空!"); Result<Object> wrapResult = Result.error("requestIP=" + ip + " requestURI=" + uri + " odata请求 cookies 不能为空!");
writeResult(response, wrapResult); writeResult(response, wrapResult);
...@@ -256,6 +255,7 @@ public class OperateAuthFilter implements Filter { ...@@ -256,6 +255,7 @@ public class OperateAuthFilter implements Filter {
writeResult(response, wrapResult); writeResult(response, wrapResult);
return; return;
} }
//首页重定向
if (request.getMethod().equals("GET") && ("/index.html".equals(uri))) {// "/index.html"跳转到"/" if (request.getMethod().equals("GET") && ("/index.html".equals(uri))) {// "/index.html"跳转到"/"
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
response.setHeader("Pragma", "no-cache"); response.setHeader("Pragma", "no-cache");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment