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

国内做的好看的网站设计怎么自己建网站

国内做的好看的网站设计,怎么自己建网站,网站及微站建设合同验收,网站一直百度上搜不到是怎么回事啊一、背景 在项目开发过程中,需要对于某些接口统一处理。 这时候就需要获取响应的报文,再对获取的报文进行统一处理。 二、了解过滤器 首先了解一下过滤器拦截器的区别: JAVA中的拦截器、过滤器: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; charset=utf-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.yidumall.com/news/91842.html

相关文章:

  • 全球设计师网谷歌优化
  • 做网站好的网络公司南京seo外包
  • 邢台医院网站建设桌面百度
  • 网站开发流程图万网域名购买
  • wordpress语言包下载地址成都网站改版优化
  • 正规做兼职的网站广州营销推广
  • 深圳做网站的好公司qq排名优化网站
  • 做网站的备案太原关键词优化服务
  • 嘉兴品牌网站设计免费网络推广软件有哪些
  • 做自己的网站怎么购买空间百度知道
  • 那些网站可以做公司的推广开封搜索引擎优化
  • 怎么建com的网站盐城seo优化
  • 用腾讯云做网站的好处怎样在网上推广
  • j网站开发网站首页排名
  • 河源网站网站建设商丘网站优化公司
  • 公司视频广告拍摄青岛的seo服务公司
  • 营销设计网站建设seo网络营销招聘
  • 企业网络推广培训seo推广网站
  • 宿迁网站建设方案电子制作网站
  • pk10代码网站开发平台推广精准客源
  • 查做外贸客户的网站如何优化
  • html网站素材网网站统计工具有哪些
  • 网站建设需要的技术百度搜索推广登录入口
  • 做局域网网站教程上海网站制作开发
  • 政府网站流行设计特点淘宝seo搜索引擎原理
  • 公安局网站备案表情感网站seo
  • 网站单页设计steam交易链接在哪看
  • 外贸b2c平台都有哪些网站西安网站设计开发
  • 做网站推广的销售电话开场白百度新闻网
  • 为外国人做非法网站今日实时热点新闻事件