|
@@ -70,6 +70,7 @@ public class SignFilter extends ZuulFilter {
|
|
|
@Override
|
|
@Override
|
|
|
public Object run() {
|
|
public Object run() {
|
|
|
|
|
|
|
|
|
|
+
|
|
|
// 获取到request
|
|
// 获取到request
|
|
|
RequestContext ctx = RequestContext.getCurrentContext();
|
|
RequestContext ctx = RequestContext.getCurrentContext();
|
|
|
HttpServletRequest request = ctx.getRequest();
|
|
HttpServletRequest request = ctx.getRequest();
|
|
@@ -93,10 +94,35 @@ public class SignFilter extends ZuulFilter {
|
|
|
|
|
|
|
|
// get方法和post、put方法处理方式不同
|
|
// get方法和post、put方法处理方式不同
|
|
|
if ("GET".equals(method)) {
|
|
if ("GET".equals(method)) {
|
|
|
-
|
|
|
|
|
|
|
+ boolean flag = false;
|
|
|
|
|
+ String ua= request.getHeader("device");
|
|
|
|
|
+ if ("mobile".equalsIgnoreCase(ua)) {
|
|
|
|
|
+ flag = true;
|
|
|
|
|
+ }
|
|
|
|
|
+ Enumeration paramNames = request.getParameterNames();
|
|
|
|
|
+ if(flag && paramNames != null ){
|
|
|
|
|
+ while(paramNames.hasMoreElements()){
|
|
|
|
|
+ String paramName = (String) paramNames.nextElement();
|
|
|
|
|
+ if(!paramName.equals("_t") && !paramName.equals("_p")){
|
|
|
|
|
+ ctx.setSendZuulResponse(false);
|
|
|
|
|
+ ctx.setResponseStatusCode(401);
|
|
|
|
|
+
|
|
|
|
|
+ APIResult<Void> result = new APIResult<Void>();
|
|
|
|
|
+ result.setState(StateEnum.ILLEGAL_REQUEST.getCode());
|
|
|
|
|
+ result.setCause("Illegal request parameter!");
|
|
|
|
|
+ ctx.getResponse().setContentType(MediaType.APPLICATION_JSON_UTF8_VALUE);
|
|
|
|
|
+ ctx.setResponseBody(result.toString());
|
|
|
|
|
+ ctx.set("isSuccess", false);
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
// 获取请求参数name
|
|
// 获取请求参数name
|
|
|
name = request.getParameter("_p");
|
|
name = request.getParameter("_p");
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
if (name != null) {
|
|
if (name != null) {
|
|
|
// 关键步骤,一定要get一下,下面才能取到值requestQueryParams
|
|
// 关键步骤,一定要get一下,下面才能取到值requestQueryParams
|
|
|
request.getParameterMap();
|
|
request.getParameterMap();
|