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

度假村网站建设网站开发语言 .net

度假村网站建设,网站开发语言 .net,网站服务器 重启,购物网站建设新闻一、背景 在项目开发过程中#xff0c;需要对于某些接口统一处理。 这时候就需要获取响应的报文#xff0c;再对获取的报文进行统一处理。 二、了解过滤器 首先了解一下过滤器拦截器的区别#xff1a; JAVA中的拦截器、过滤器#xff1a;https://blog.csdn.net/qq_38254…一、背景 在项目开发过程中需要对于某些接口统一处理。 这时候就需要获取响应的报文再对获取的报文进行统一处理。 二、了解过滤器 首先了解一下过滤器拦截器的区别 JAVA中的拦截器、过滤器https://blog.csdn.net/qq_38254635/article/details/131201519 三、代码 新建 WebResponseWrapper.java 重写 HttpServletResponseWrapper处理json报文请求 package com.config.filter;import javax.servlet.ServletOutputStream; import javax.servlet.WriteListener; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponseWrapper; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.UnsupportedEncodingException;public class WebResponseWrapper extends HttpServletResponseWrapper {private ByteArrayOutputStream buffer null;private ServletOutputStream out null;private PrintWriter writer null;public WebResponseWrapper(HttpServletResponse response) throws IOException {super(response);buffer new ByteArrayOutputStream();out new WrapperOutputStream(buffer);writer new PrintWriter(new OutputStreamWriter(buffer,this.getCharacterEncoding()));}Overridepublic ServletOutputStream getOutputStream() throws IOException {return out;}Overridepublic PrintWriter getWriter() throws UnsupportedEncodingException {return writer;}Overridepublic void flushBuffer() throws IOException {if (out ! null) {out.flush();}if (writer ! null) {writer.flush();}}Overridepublic void reset() {buffer.reset();}public byte[] getResponseData() throws IOException {flushBuffer();return buffer.toByteArray();}private class WrapperOutputStream extends ServletOutputStream {private ByteArrayOutputStream bos null;public WrapperOutputStream(ByteArrayOutputStream stream)throws IOException {bos stream;}Overridepublic void write(int b) throws IOException {bos.write(b);}Overridepublic void write(byte[] b) throws IOException {bos.write(b, 0, b.length);}Overridepublic boolean isReady() {return false;}Overridepublic void setWriteListener(WriteListener writeListener) {}}} 新建WebResponseFilter.java响应过滤器处理参数加密、字符串替、添加响应参数等等。 package com.config.filter;import com.Utils; import org.springframework.stereotype.Component; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter;Component public class WebResponseFilter implements Filter {Overridepublic void init(FilterConfig filterConfig) throws ServletException {}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {HttpServletRequest httpRequest (HttpServletRequest) request;HttpServletResponse httpResponse (HttpServletResponse) response;if(checkPath(httpRequest.getRequestURI())){chain.doFilter(httpRequest, httpResponse);} else {response.setContentType(application/json; charsetutf-8);response.setCharacterEncoding(UTF-8);WebResponseWrapper webResponseWrapper new WebResponseWrapper((HttpServletResponse) response);chain.doFilter(request, webResponseWrapper);byte[] resData webResponseWrapper.getResponseData();PrintWriter out response.getWriter();String encrypt Utils.handleResponse(new String(resData, UTF-8));out.print(encrypt.replaceAll([\\s*\t\n\r], ));out.flush();out.close();}}private boolean checkPath(String url){if(!on.equals(ENCRYPT_SWITCH)) return true;for (String path : RESPONSE_LIST) {if(url.contains(path)) return true;}return false;}Overridepublic void destroy() {}}说明 ENCRYPT_SWITCH开关配置 RESPONSE_LIST忽略处理路径配置如一些导出的操作。 Utils.handleResponse()需要对报文进行的处理操作。 相关链接 SpringBoot过滤器获取请求的参数https://blog.csdn.net/qq_38254635/article/details/136041159 JAVA中的拦截器、过滤器https://blog.csdn.net/qq_38254635/article/details/131201519 OK就这些吧。 有什么不对的还望指正书写不易觉得有帮助就点个赞吧☺☺☺
http://www.hkea.cn/news/14310386/

相关文章:

  • 学完js了可以做哪些网站千图网免费素材图库ppt
  • asp网站 工具宜昌商城网站建设
  • 建设网站第一部分建网站报价明细表
  • 制作网站软件手机seo网站管理
  • 有做软件的网站有哪些wordpress一万IP
  • 记事本做网站的代码石家庄做网站比较好的公司
  • 中山外贸网站开发价格电商网页图片设计
  • 网站企业备案改个人备案wordpress更改字体
  • 怎么做返利网站可以做微信推送的网站
  • 苏州网站建设一站通怎么用文件做网站
  • 赣州市建设考勤网站第一网站ppt模板
  • 著名网站有哪些网络优化师自学网站
  • 昆明电商网站开发安卓app开发实验报告
  • 做宠物商品的网站互联网营销师培训课程
  • 手机网站转换小程序网站支付宝怎么做的
  • 看过的网站做记号律师网络推广
  • 查询网站流量的网址设计工作室是做什么的
  • 三乡网站建设公司个人网站名称怎么取容易备案
  • 建设网站企业专业服务如何做淘外网站推广
  • 网站调用wordpress备案期间网站关闭
  • 自建网站阿里云备案通过后怎么做网站职业培训学校
  • 哪里买到纯净网站模板网站推广软文代发
  • 潜江市建设工程合同备案网站广州天河建网站的公司
  • 网站做一些流量互换打开网站 磁盘空间不足
  • 做的网站没有注册优推宝可以做自己网站吗
  • 网站建设与管理技术实训教程pdf广东省企业信用信息网
  • 实训报告网站开发wordpress 活动通知
  • 法治中国建设网站小程序推广怎么赚钱
  • 做直播网站需要什么资质wordpress 4.3.9 漏洞
  • 营销网站建设定制小程序官网登录入口