获取请求体数据 POST
- POST获取请求体
- 请求体中封装了 POST请求的请求参数
- 获取流对象 再从流对象中那数据 一种字节流 一种字符流
- ServletInputStream getInputStream(); 获取字节输入流 可以操作所有类型数据
BufferedReader getReader()获取字符输入流 只能操作字符
- 获取请求参数通用方式
- String getParameter(String name); 根据参数名称获取参数值 username=zs&password=13
- String getParameterValues(String name);根据参数名称获取参数数组 hobby=ss&&hobby=sdad
- Enumeration<String> getHeaderNames(); 后去所有的请求的名称
- Map<String,String[]>getParameterMap(); 获取所有的参数的Map集合
- request请求转发 是一中服务器内部资源跳转的方式
- request.getRequestDispatcher("...").forward(request,response);
- 特点 浏览器地址栏路径不发生变化
- 只能转发到当前服务器内部资源中
- 转发是一次请求
- 数据共享
- 域对象:一个有作用范围的对象,在范围内可以共享数据
- request域:代表一次请求的范围,一般用于请求转发的多个资源共享数据
- Servlet之间数据通信
- setAttribute(String name ,Object obj):存储数据
- getAttitube(String name):通过键获取值
- removeAttribute(String name);通过键移除键直对
- 获取ServletContext
- ServletContext getServletContext();
- 对最后一个方法举例
Map<String, String[]> parameterMap = request.getParameterMap();
Set<String> keySet = parameterMap.keySet();//获取Keyset字符串数组
for (String name : keySet) {//循环Keyset
System.out.println(name); //输出键名称
String[] values = parameterMap.get(name);
for (String value : values) {
System.out.println(value);//输出键值数组
}
System.out.println("--------");
}
}
- GET和POST中文乱码问题 设置流的编码 request.setCharacterEncoding("utf-8"); 即可解决 get不会乱码 post 使用中文 要注意
注册实例
<form action="/reDemo5" method="post">
<input type="text" placeholder="in" name="username"><br>
<input type="password" placeholder="out" name="password"><br>
<input type="submit" value="resgist">
</form>
BufferedReader br = request.getReader();
String line = null;
while ((line=br.readLine())!=null){
System.out.println(line);
}
}
获取请求体数据 POST的更多相关文章
- 入门servlet:request获取请求体数据
@WebServlet("/RequestDemo5") public class RequestDemo5 extends HttpServlet { protected voi ...
- 在Express 中获取表单请求体数据
在Express 中获取表单请求体数据 获取 GET 请求参数 获取 POST 请求体数据 安装 配置 获取 GET 请求参数 Express 内置了一个 API , 可以直接通过 req.query ...
- Spring Cloud Gateway 之获取请求体(Request Body)的几种方式
Spring Cloud Gateway 获取请求体 一.直接在全局拦截器中获取,伪代码如下 private String resolveBodyFromRequest(ServerHttpReque ...
- java web获取请求体内容
Java Web中如何获取请求体内容呢? 我们知道请求方式分为两种:Get,Post. /*** * Compatible with GET and POST * * @param request * ...
- Python+requests 发送简单请求--》获取响应状态--》获取请求响应数据
Python+requests 发送简单请求-->获取响应状态-->获取请求响应数据 1.环境:安装了Python和vscode编译器(Python自带的编译器也ok).fiddler抓包 ...
- 入门servlet:request获取请求头数据
@WebServlet("/RequestDemo2") public class RequestDemo2 extends HttpServlet { protected voi ...
- 入门servlet:request获取请求行数据
/** * 演示Request对象获取请求行数据 */ @WebServlet("/test") public class RequestDemo1 extends HttpSer ...
- mitmproxy 获取请求响应数据
比较好的一个介绍是:https://blog.wolfogre.com/posts/usage-of-mitmproxy/ mitproxy 获取请求响应数据的代码如下: # -*- coding: ...
- 03-【request对象获取请求的数据 & request对象存取值】
request概述(封装了客户端所有的请求数据) request是Servlet.service()方法的一个参数,类型为javax.servlet.http.HttpServletRequest.在 ...
随机推荐
- Elemnt ui 组件封装(form)
<template> <el-form class="form" :inline="formConfig.inline" :model=&qu ...
- .NET混合开发解决方案5 WebView2运行时与分发应用
系列目录 [已更新最新开发文章,点击查看详细] 发布使用Microsoft Edge WebView2的应用程序时,客户端计算机上需要安装WebView2运行时,可以安装自动更新的Evergr ...
- 代码源 每日一题 分割 洛谷 P6033合并果子
题目链接:切割 - 题目 - Daimayuan Online Judge 数据加强版链接: [NOIP2004 提高组] 合并果子 加强版 - 洛谷 题目描述 有一个长度为 ∑ai 的木板,需要 ...
- 1.12 Linux已经霸占了服务器领域!
如今的 IT 服务器领域是 Linux.UNIX.Windows 三分天下,Linux 系统可谓后起之秀,特别是"互联网热"以来,Linux 在服务器端的市场份额不断扩大,每年增长 ...
- 用 Docker 构建 MySQL 主从环境
开源Linux 一个执着于技术的公众号 前言 本篇文章记录使用 docker-compose 以及 dockerfile 来构建基于 binlog 的 MySQL 主从环境.如果你严格按照文中的步骤进 ...
- RabbitMQ 3.9( 基础 )
1.认识MQ 1.1.什么是MQ? MQ全称:message queue 即 消息队列 这个队列遵循的原则:FIFO 即 先进先出 队列里面存的就是message 1.2.为什么要用MQ? 1.2.1 ...
- Nginx中FastCGI参数的优化配置实例
在配置完成Nginx+FastCGI之后,为了保证Nginx下PHP环境的高速稳定运行,需要添加一些FastCGI优化指令.下面给出一个优化实例,将下面代码添加到Nginx主配置文件中的HTTP层级. ...
- 用Docker打包Python运行环境
虽然Docker作为部署环境打包镜像的工具,和我的科研并没有直接的关系.但我觉得在项目中运用Docker来打包环境依赖也可以大大提高工作效率,于是准备专门学习一下Docker. 1. Docker基础 ...
- Mac-Typora快捷键
标题(大钢) command+(1-6)) 如:command+1,设置为一级标题 引用 快捷键:command+option+Q 或者:先">",后面直接加内容 二级引用: ...
- Spring大事务到底如何优化?
所谓的大事务就是耗时比较长的事务. Spring有两种方式实现事务,分别是编程式和声明式两种. 不手动开启事务,mysql 默认自动提交事务,一条语句执行完自动提交. 一.大事务产生的原因 操作的数据 ...