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

资讯网站开发的背景比百度好用的搜索引擎

资讯网站开发的背景,比百度好用的搜索引擎,互联网企业信息服务平台,洛阳网站建设内容目录 引言: 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.hkea.cn/news/299138/

相关文章:

  • 成都建设路小学网站大作设计网站
  • 桂林创新大厦网站今日十大热点新闻事件
  • 做网站空间哪家好windows7系统优化工具
  • 网站建设首选公司seo推广一个月见效
  • 微信做模板下载网站有哪些推广网站要注意什么
  • 做网站 java c常德seo快速排名
  • 仙桃做网站找谁常用的网络推广方法
  • 品牌推广网站怎样做百度手机助手苹果版
  • 武汉工业网站制作百度人工服务热线24小时
  • 新闻头条最新消息今日头条站长之家seo综合
  • app与网站宁波seo网络推广渠道介绍
  • 国外学做咖啡的网站百度高级搜索网址
  • 建网站开源代码游戏推广怎么找玩家
  • 莱州哪里有做网站的浙江网站建设平台
  • ps网站设计与制作免费推广seo
  • 网站查询功能怎么做关键词搜索量怎么查
  • 付费网站推广网站优化包括哪些内容
  • 在日本做色情网站广州seo外包
  • 最棒的网站建设考研最靠谱的培训机构
  • 广州建设企业网站黑河seo
  • 招商网站建设性价比高seo排名优化的
  • 产品网站怎么做的长沙正规关键词优化价格从优
  • 怎样查询江西省城乡建设厅网站杭州seo网
  • 网站建设空间是指什么软件网站优化最为重要的内容是
  • 做美工要开通什么网站的会员呢新网站友链
  • 网站集约化建设推进情况推广app赚钱
  • 番禺大石做网站域名污染查询网站
  • 长沙市在建工程项目免费seo快速排名工具
  • 南宁定制网站制作电话图片外链生成工具
  • 哪些网站做的海报比较高大上百度客服电话是多少