今天在试着搭建微服务zuul网关的时候,想到用zuul自带的过滤器来做一次token校验,结果就是为了图省事儿用了post方法传了json格式的参数,结果就是传了token参数,他就是校验不到。
自己在代码里用的 HTTPServletRequest来接受参数
结果当然就是无论怎么传都接受不到了,对于getParameter这种获取方式,只能获取到表单形式(header),从而拿不到参数为json格式的post请求参数。(对于请求参数的获取方式大家自行百度吧哈哈,选择适合自己的最重要。)
所以更改取值方法,用I/O流去读取就可以拿到一个json类型的字符串,从而在取出自己想要的token去校验就可以了:
@Override public Object run() { RequestContext requestContext = RequestContext.getCurrentContext(); HttpServletRequest request = requestContext.getRequest(); log.info(String.format("%s >>> %s", request.getMethod(), request.getRequestURL()