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

做pop网站如何在手机上制作网站

做pop网站,如何在手机上制作网站,石家庄做网站建设的公司哪家好,深圳布吉疫情背景 在一次业务开发中,由于需要在拦截器中对一个http请求中request body内容做解析和判断,所以用了httpServletRequest的getInputStream解析了request body内容,之后导致了拦截器处理成功后,原来的业务接口处报request body not…

背景

在一次业务开发中,由于需要在拦截器中对一个http请求中request body内容做解析和判断,所以用了httpServletRequest的getInputStream解析了request body内容,之后导致了拦截器处理成功后,原来的业务接口处报request body not found的错误。

原理

在使用Springboot开发restful接口的时候,@RequestBody将request body内容注入到参数里时内部是调用getInputStream()方法。getInputStream()对request body流进行读取,读取后流数据就没了,所以只能读取一次,拦截器先进行了读取,原来的业务接口就读取不到了。

解决方案

创建一个类BodyReaderHttpServletRequestWrapper,继承HttpServletRequestWrapper,重写getInputStream和getReader方法,在request.getInputStream之后保存请求体,之后业务代码就可以重复读request body了。

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;
/**
*
* 从请求体中获取参数请求包装类:<br>
* @author nick
* @version 5.0 since 2018年9月5日
*/
public class BodyReaderHttpServletRequestWrapper extends HttpServletRequestWrapper{
private byte[] requestBody = null;//用于将流保存下来
public BodyReaderHttpServletRequestWrapper(HttpServletRequest request) throws IOException {
super(request);
requestBody = StreamUtils.copyToByteArray(request.getInputStream());
}
@Override
public ServletInputStream getInputStream() throws IOException {
final ByteArrayInputStream bais = new ByteArrayInputStream(requestBody);
return new ServletInputStream() {
@Override
public int read() throws IOException {
return bais.read();
}
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
};
}
@Override
public BufferedReader getReader() throws IOException{
return new BufferedReader(new InputStreamReader(getInputStream()));
}
}

http://www.zhongyajixie.com/news/2944.html

相关文章:

  • 企业网站建设对企业客户的意义品牌公关具体要做些什么
  • 做网站设计有哪些网页网络工程师培训机构排名
  • 网站开发开题报告关键问题武汉网站推广优化
  • 怎么给自己喜欢的人做网站seo优化教程培训
  • 59网一起做网站站长工具收录查询
  • mysql 注册网站培训心得
  • 南昌政府网站建设uc搜索引擎入口
  • 电商网站费用百度网址
  • 网站建站建设工作总结如何增加网站的外链
  • 东至网站制作网站宣传文案范例
  • 网站建设灯上海网络推广渠道
  • 建筑企业网站seo营销网站
  • 可以接项目做的网站外贸接单平台网站
  • 旅游网站建设策划方案seo 什么意思
  • bootstrap商城模板深圳外包seo
  • 设计网站推荐室内关键词权重
  • 海城网站制作建设百度商家平台客服电话
  • 政协网站建设情况汇报线下推广的渠道和方法
  • 律师网站专业设计南沙seo培训
  • 新网站提交百度收录营销技巧和营销方法培训
  • 微信页面设计网站抖音怎么运营和引流
  • 免费最好网站建设高质量关键词搜索排名
  • 政府档案网站建设怎么建立网站快捷方式
  • 关于网站建设的几点体会关键词查找工具
  • 微信转账做网站收款营销型企业网站有哪些平台
  • 做网站哪家南京做网站发广告去哪个平台
  • 柳城企业网站建设公司最全bt搜索引擎入口
  • 如何制作网站链接手机搭建网站
  • 网站排名应该怎么做网站如何推广
  • 长春本地网站制作网络营销的特点有哪些?