request payload和form data
来源:互联网 发布:医院挂号哪个软件好 编辑:程序博客网 时间:2024/06/05 14:09
用angular的post提交时候发现servlet,getparameter取不到值,看network发现传值变成了request payload,而不是form data。
对比两种请求头发现
form表单提交的是application/x-www-form-urlencoded
而angular的post提交的是 application/json;charset=UTF-8
从而导致两种不同的请求体。而servlet的getparameter方法原理也是解析inputstream流进而将参数传到parameter里面,但它没有解析request payload的请求体。
解决方法1:将上传的报文头改为application/x-www-form-urlencoded
解决方法2:解析inputstream
- private String getStringFromStream(HttpServletRequest req) {
- ServletInputStream is;
- try {
- is = req.getInputStream();
- int nRead = 1;
- int nTotalRead = 0;
- byte[] bytes = new byte[10240];
- while (nRead > 0) {
- nRead = is.read(bytes, nTotalRead, bytes.length - nTotalRead);
- if (nRead > 0)
- nTotalRead = nTotalRead + nRead;
- }
- String str = new String(bytes, 0, nTotalRead, "utf-8");
- return str;
- } catch (IOException e) {
- e.printStackTrace();
- return "";
- }
- }
阅读全文
0 0
- request payload和form data
- Request Payload 和 Form Data 的区别
- Form Data vs Request Payload
- form data 和request payload 和Query String Parameters
- form data 和request payload 和Query String Parameters
- HTTP请求中的form data和request payload的区别
- HTTP请求中的form data和request payload的区别
- HTTP请求中的form data和request payload的区别
- HTTP请求中的form data和request payload的区别
- HTTP请求中的form data和request payload的区别
- Form Data vs Request Payload(转)
- node爬虫HTTP请求中的form data和request payload的区别
- vue axios POST请求中参数以form data和request payload形式的原因
- HTTP请求中的form data和request payload的区别等(转载)
- angular $http.post request payload方式转为form data
- AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
- AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
- AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
- MyBatis 分别结合 SQL Server、MySQL、ORACLE进行数据库分页
- 关于DBCP为什么加载了配置文件 直接一个getConnection就获得了连接对象呢 ?
- springboot跨域
- 大数据和云计算技术周报(第4期):NoSQL特辑
- TensorFlow实战(一)手写数字识别
- request payload和form data
- 线程练习题
- 洛谷1273 有线电视网
- CentOS下mysql数据库常用命令总结
- PHP使用3种方法实现数据采集
- CSS中的样式层叠机制Cascade
- Java通过jdbc访问SQLServer数据库
- C/C++ 第八周串和数组 (一)对称矩阵压缩存储的实现与应用 项目3—(1)
- UE4打包安卓项目遇到UATHelper: Packaging (Android (ETC1)): ERROR: cmd.exe failed with args的解决方案