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

金湖建设局网站网站软件推荐

金湖建设局网站,网站软件推荐,vs 2017c 怎么建设网站,大连哪里有手机自适应网站建设维护目录 引言: 1. 获取request对象的几种常用方式 -> 1.1 获取请求对象 通过请求上下文对象 获取信息[推荐] -> 1.2 在controller层直接获取[不推荐 侵害性太强] -> 1.3 interceptor中获取[部分业务中使用] -> 1.4 request常用api简介 2. 获取request的body的工具…

目录

引言:

1. 获取request对象的几种常用方式

-> 1.1 获取请求对象 通过请求上下文对象 获取信息[推荐]

 -> 1.2 在controller层直接获取[不推荐 侵害性太强]

-> 1.3 interceptor中获取[部分业务中使用]

 -> 1.4 request常用api简介

2. 获取request的body的工具类如下: 

3. 使用方式: 


引言:

request对象获取url uri param参数 但是没有直接的api去查看body参数,参考1.4 

1. 获取request对象的几种常用方式

-> 1.1 获取请求对象 通过请求上下文对象 获取信息[推荐]

RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) attributes;
HttpServletRequest request = servletRequestAttributes.getRequest();

 -> 1.2 在controller层直接获取[不推荐 侵害性太强]

    @PostMapping("/add")@ApiOperation("添加用户")public ResultResponse add(@Validated @RequestBody UserReqDTO userReqDTO, HttpServletRequest request) {userService.addUserMsg(userReqDTO,request);return ResultResponse.ok("添加成功!");}

-> 1.3 interceptor中获取[部分业务中使用]

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws IOException {}

 -> 1.4 request常用api简介

1.getRequestURL()方法返回客户端发出请求时的完整URL http:localhost:8080/aaa/bbb

2.getRequestURI()方法返回请求行中的资源名 /aaa/bbb

3.getQueryString()方法返回请求行的参数部分。

4.getRemoteAddr()方法返回发出请求的客户机的IP地址。

5.getRemoteHost()方法返回发出请求的客户机的完整主机名。

6.getRemotePort()方法返回客户机所使用的网络端口号。

7.getLocalAddr()方法返回服务器的IP地址。

8.getLocalName()方法返回服务器的主机名。

9.getMethod()得到客户机请求方式。

2. 获取request的body的工具类如下: 

原因: api中没有获取body的方法

import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;import javax.servlet.http.HttpServletRequest;
import java.io.*;/*** 请求体工具类** @author pzy* @version 0.1.0*/
public class RequestBodyUtils {private static final int BUFFER_SIZE = 1024 * 8;/*** read string.** @param reader Reader instance.* @return String.* @throws IOException*/public static String read(Reader reader) throws IOException {try (StringWriter writer = new StringWriter()) {write(reader, writer);return writer.getBuffer().toString();}}/*** write.** @param reader Reader.* @param writer Writer.* @return count.* @throws IOException*/public static long write(Reader reader, Writer writer) throws IOException {return write(reader, writer, BUFFER_SIZE);}/*** write.** @param reader     Reader.* @param writer     Writer.* @param bufferSize buffer size.* @return count.* @throws IOException*/public static long write(Reader reader, Writer writer, int bufferSize) throws IOException {int read;long total = 0;char[] buf = new char[bufferSize];while ((read = reader.read(buf)) != -1) {writer.write(buf, 0, read);total += read;}return total;}/*** 获取requestBody*/public static String getRequestBody() throws IOException {RequestAttributes attributes = RequestContextHolder.getRequestAttributes();ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) attributes;assert servletRequestAttributes != null;HttpServletRequest request = servletRequestAttributes.getRequest();BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream()));//读取输入流的内容转换为String类型IOUtils必须引入org.apache.dubbo.common.utils.IOUtils;包return RequestBodyUtils.read(reader);}}

3. 使用方式: 

当有请求的时候 需要获取 直接调用就可以, JSONObject对象-> 需要的DTO对象

String requestBody = RequestBodyUtils.getRequestBody();
JSONObject jsonObject = JSONObject.parseObject(requestBody);

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

相关文章:

  • 句容网站建设网络推广培训班哪家好
  • 常州公司做网站的流程企业如何进行搜索引擎优化
  • 网站开发和网络推广app
  • 中国建设网站齐齐哈尔市互联网产品运营
  • 公司网站建设合同要交印花税吗百度快照优化排名
  • 网站做收录网络营销分析报告
  • 鲜花网站建设解决方案网络推广营销方案100例
  • 哪些网站做电商比较好网络营销策略都有哪些
  • 网站开发形象设计要求网络营销与管理
  • 悬停提示 wordpress成都网络推广优化
  • wordpress coreseek长沙seo优化推荐
  • 微擎可以做网站吗2022年最火文案
  • 电子商务网站建设的整体规划广州网络营销
  • 做网站送商标技能培训有哪些
  • 蓬莱有做网站的吗关键词排名推广软件
  • 教人做辐射4mod的网站在哪里可以发布自己的广告
  • 网站维护包括哪些工作app推广怎么做
  • 河南网站建设软件网站seo推广优化教程
  • 个体户可以做网站建设抖音seo招商
  • :wordpress网站如何播放自己的视频搜索引擎调词平台价格
  • 开发公司户型设计会议福州搜索引擎优化公司
  • 葫芦岛手机网站建设进行优化
  • 贵阳网站建设怎么样云推广
  • 衡水网站建设找谁南京网站制作设计
  • 够物网站空间100m够不够百度点击器下载
  • 制作企业推广网站百度关键词推广费用
  • wordpress 底部菜单太原百度快速优化排名
  • 常州个人网站设计如何制作一个自己的网站
  • 苏州网站建设网站优化新的seo网站优化排名 排名
  • 自己建的网站如何推广培训机构招生方案