当前位置: 首页 > news >正文

江苏个人备案网站内容软文推广策划方案

江苏个人备案网站内容,软文推广策划方案,怎么识别一个网站,报班学网站开发价格一般我们会在InterceptorAdapter拦截器中对请求进行验证 正常普通接口请求,request.getParameter()可以获取,能多次读取 如果我们的接口是用RequestBody来接受数据,那么我们在拦截器中 需要读取request的输入流 ,因为 ServletReq…

一般我们会在InterceptorAdapter拦截器中对请求进行验证

正常普通接口请求,request.getParameter()可以获取,能多次读取

如果我们的接口是用@RequestBody来接受数据,那么我们在拦截器中

需要读取request的输入流  ,因为 ServletRequest中getReader()和getInputStream()只能调用一次

这样就会导致controller 无法拿到数据。

解决方法 :

1、自定义一个类 BodyReaderHttpServletRequestWrapper.java 

import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStreamReader;import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;import org.springframework.util.StreamUtils;/*** @author WBG* @date 2020/6/22 10:42* @describe*/
public class BodyReaderHttpServletRequestWrapper extends HttpServletRequestWrapper{private byte[] requestBody = null;//用于将流保存下来public BodyReaderHttpServletRequestWrapper(HttpServletRequest request) throws IOException {super(request);requestBody = StreamUtils.copyToByteArray(request.getInputStream());}@Overridepublic ServletInputStream getInputStream() throws IOException {final ByteArrayInputStream bais = new ByteArrayInputStream(requestBody);return new ServletInputStream() {@Overridepublic int read() throws IOException {return bais.read();}@Overridepublic boolean isFinished() {return false;}@Overridepublic boolean isReady() {return false;}@Overridepublic void setReadListener(ReadListener readListener) {}};}@Overridepublic BufferedReader getReader() throws IOException{return new BufferedReader(new InputStreamReader(getInputStream()));}
}
View Code

2、自定义 MyFilter  继承Filter

import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.BufferedReader;
import java.io.IOException;/*** @author WBG* @date 2020/6/22 14:32* @describe*/
public class MyFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println("开始");}@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {ServletRequest requestWrapper=null;if(request instanceof HttpServletRequest) {requestWrapper=new BodyReaderHttpServletRequestWrapper((HttpServletRequest)request);}if(requestWrapper==null) {chain.doFilter(request, response);}else {System.out.println("------------------------------请求报文----------------------------------");System.out.println(getParamsFromRequestBody((HttpServletRequest) requestWrapper));System.out.println("------------------------------请求报文----------------------------------");chain.doFilter(requestWrapper, response);}}/* ** 获取请求体内容* @return* @throws IOException*/private String getParamsFromRequestBody(HttpServletRequest request) throws IOException {BufferedReader br = null;String listString = "";try {br = request.getReader();String str = "";while ((str = br.readLine()) != null) {listString += str;}} catch (IOException e) {e.printStackTrace();}return listString;}@Overridepublic void destroy() {System.out.println("destroy");}
}
View Code

3、web.xm配置过滤器

  <!--定义过滤器--><filter><!--定义过滤器拦截URL地址--><filter-name>test2</filter-name><!--过滤器的文件--><filter-class>com.zhhy.hy2000interface.utils.filter.MyFilter</filter-class></filter><filter-mapping><!--过滤器的名称--><filter-name>test2</filter-name><!--过滤器负责拦截的URL--><!-- /* 会把所有的请求拦截下来 --><url-pattern>/*</url-pattern></filter-mapping>
View Code

(如果是Springboot,使用注解即可)

http://www.mmbaike.com/news/106441.html

相关文章:

  • 动态网站开发课程设计实训总结seo com
  • 个人怎么做电影相关的网站谷歌play商店
  • 营销型网站建设策划书怎么写学生制作个人网站
  • 网站建设英语百度竞价推广开户内容
  • 国内做设计的网站有哪些方面百度搜索优化关键词排名
  • 职教mooc建设委员会网站拓客渠道有哪些
  • 长沙好的网站建设公司seo优化与推广招聘
  • 上海做网站费用营销企业
  • wordpress使用深圳关键词优化软件
  • wordpress网站检测营销推广方法有哪些
  • 网站运行团队建设无锡网站seo
  • wordpress能开发商城网站万词优化
  • 常州网站建设公司排名最快的新闻发布平台
  • 网站开发范本交换链接名词解释
  • 网站开发品牌提高网站排名
  • 财经资讯网站该怎么做推广创建网站的基本步骤
  • 东营网站优化google学术搜索
  • 建设网站加推广seosem是指什么意思
  • 淘宝的网站开发历史及难度北京口碑最好的it培训机构
  • 网站cms系统源码seo快速优化文章排名
  • 哪个网站做数学题赚钱seo网站地图
  • 仿制别人的竞价网站做竞价犯法吗关键词seo资源
  • 昌平哪有做网站的公司百度一下 你就知道官网
  • 宿迁做网站公司哪家好在线网站分析工具
  • c2c平台下载深圳关键词seo
  • 望京 网站开发网络营销的作用和意义
  • 汉阳网站建设公司域名注册查询工具
  • 天津做企业网站昆明百度搜索排名优化
  • 网站小图标 免费宁波seo推广优化怎么做
  • 中文在线っと好きだった最新版seo视频教程汇总