副标题:Java如何从HttpServletRequest中读取HTTP请求的body

今天接触一个项目,前台用angular4 post访问后台,

this.httpService.post({url: 'quality/IMSI_MO', IMSImsg: this.InputMsg, TIME1: time1, TIME2: time2
}).subscribe(res => {this.dialing = res;
});
public post(msg): Observable<any[]> {return this.http.post(this.domain + [msg.url],JSON.stringify(msg), {headers: this.headers}).map(res => res.json() as any[]);
}

后台用servlet接收参数。

发现用request.getParameter获取不到参数。

String imsi =request.getParameter("search_imsi");

发现imsi值是null,获取不到。而以往的JQuery ajax能获取到。

之前用Springmvc 能获取到angular4 post的值

public @ResponseBody List<Map<String, Object>> getLTEmesctime(@RequestBodyMap<String, String> map) {........}

查看angular post的报文和非angularpost的报文

报文主体部分传递的不同。angular传递了json,json字符串这个整体又没有参数对应。所以request.getParameter是获取不到的。

只能读取主体的json字符串内容,然后转成Map对象,从Map对象中获取响应的值。

Gson gson=new Gson();Map<String,String> resultMap=new HashMap<String,String>();BufferedReader br = request.getReader();String str, wholeStr = "";while ((str = br.readLine()) != null) {wholeStr += str;}System.out.println(wholeStr);if(!"".equals(wholeStr)) {Map<String, String> map =gson.fromJson(wholeStr,Map.class);String imsi =map.get("search_imsi");String msisdn =map.get("search_msisdn");String p_hour_start =map.get("search_p_hour_start");String p_hour_end =map.get("search_p_hour_end");System.out.println("Searchimsi传入search_imsi:" + imsi);System.out.println("Searchimsi传入search_msisdn:" + msisdn);System.out.println("Searchimsi传入search_p_hour_start:" + p_hour_start);System.out.println("Searchimsi传入search_p_hour_end:" + p_hour_end);

servlet获取不到Angular4 post过来的参数相关推荐

  1. Servlet 获取IllegelStateException

    Servlet 获取IllegelStateException: response提交之后,进行requestDispatcher.forwar(),会产生这样的问题: 但是必须是outputStre ...

  2. java servlet 获取路径问题_Java,JSP,Servlet获取当前工程路径(绝对路径)问题解析...

    在jsp和class文件中调用的相对路径不同. 在jsp里,根目录是webroot 在class文件中,根目录是webroot/web-inf/classes 当然你也可以用system.getpro ...

  3. servlet获取相对路径 绝对路径

    servlet获取相对路径 绝对路径 转载于:https://www.cnblogs.com/hfultrastrong/p/8168016.html

  4. Servlet获取全路径

    2019独角兽企业重金招聘Python工程师标准>>> Servlet获取全路径: request.getScheme()+ "://" + request.ge ...

  5. servlet获取表单数据

    1.sevlet获取表单数据 在很多的情况下,我们需要在浏览器,Web服务器和后台程序之间传递数据.浏览器使用两种方法可将这些信息传递到Web服务器,分别为Get方法和Post方法. 2.Get方法, ...

  6. 观看慕课老师milanlover视频Tomcat装在Servlet的三种情况+Servlet获取表单数据+Servlet相对路径

    在src新建TestServlet1: package servlet;import java.io.IOException; import java.io.PrintWriter;import ja ...

  7. 详述Servlet获取form表单数据

    如何使用Servlet获取表单数据? 一.建立连接 要实现Servlet传递表单数据的效果,我们需要一个表单数据输入端的页面和一个表单数据接收端的Java文件. 首先需要创建一个Web工程,再将下载好 ...

  8. 关于一加载jsp页面就跳转到servlet获取数据然后再跳回jsp页面的问题

    下面来说我遇到的问题: 上一篇文章中写的是jsp+javabean实现商品分页  浏览,即model1的开发模式,现在要改为 jsp+sevlet+javabean 即model2了  之前在jsp处 ...

  9. python获取当前进程id_Python进程,多进程,获取进程id,给子进程传递参数操作示例...

    本文实例讲述了Python进程,多进程,获取进程id,给子进程传递参数操作.分享给大家供大家参考,具体如下: 线程与线程之间共享全局变量,进程之间不能共享全局变量. 进程与进程相互独立  (可以通过s ...

最新文章

  1. 【CVPR 2021】首次实现将GAN压缩22倍,性能比原始模型还高!
  2. 不可不知的sudo命令
  3. java HashMap的使用
  4. 一秒解决CentOS下service 功能 不能使用 bash: service: command not found
  5. JavaScript、HTML、CSS学习—思维导图
  6. python是最好的语言 永远二十岁_“Python才是世界上最好的语言”
  7. python小结教学_Python Str内部功能-个人课堂笔记,课后总结
  8. 计算机基础知识运算符,计算机基础运算符
  9. lodop简单入门教程
  10. [原创]如何免费使用宝塔专业版
  11. 网站开发项目的需求分析
  12. 纠正口呼吸,信医生别信“神器”
  13. 长连接和短连接的定义区别,以及应用场景
  14. iOS---Xcode中删除描述文件Provisioning Profiles
  15. LibXL 算法分析(附注册机)
  16. 安全多方学习开源框架调研
  17. Git 奇淫技巧:Github ID 更名奇遇记
  18. Errors accessing files.There may be spaces in your image‘s filename (已解决)
  19. Linux7 修改网卡名eth0
  20. win10如何打开计算机端口,win10系统开启计算机端口的操作方法

热门文章

  1. 倒N字形排列java_Java排序8大算法实现
  2. return中断方法和Unreachable code(永远达不到的代码)
  3. 达内计算机毕业好找工作吗,大学生学什么好找工作 转行IT行业需要多久
  4. 深度学习编译:MLIR初步
  5. linux 编译3g驱动_linux重新编译内核
  6. mysql 按月和年累加_广西柳州市市场监管局公布市2020年11月(第一批)电梯按需维保试点名单...
  7. 生成一个GitHub的token用于git推送本地库至远程库
  8. os.environ[‘CUDA_VISIBLE_DEVICES‘]= ‘0‘设置环境变量
  9. Linux Unbunt 安装显卡驱动 简单方法
  10. Ubuntu 14.04 下 Virtual Judge 的搭建