一般在网站搭建中servlet只需处理post,get请求便足已。本篇注重使用javaweb编写restful风格api,在servlet中对四种常用请求进行处理。

  在api中对于一个请求要做的通常是提取header参数,提取携带数据(post,put)。在这里已post为例来说明用法。

  下面是发起的post请求,用python(很简单)写的,该请求既有自定义header参数Bearer,也有携带数据bodys里的内容

import json
import requests taken='YWMtoWBEBAFOEeei0SdHniRB6QAAAAAAAAAAAAAAAAAAjwAU4R56atn3HZQyagAgMAAAFanGEFTABPGgAqPOaU00kjW851AIpsKCuT8jAG1PqHyBpY6y5vOgk1zg'
headers = {'Accept': 'application/json','Content-Type':'application/json','Authorization':'Bearer '+taken}
bodys={'username':'test5','password':''}
url='http://localhost:8080/xiaoyanAPI'
response=requests.post(url,data=json.dumps(bodys),headers=headers)
print response.text

  下面是处理post请求代码

 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//打印某一个header
System.out.println(request.getHeader("Authorization"));
System.out.println();
//获取header参数名,并打印出内容
Enumeration<String> s=request.getHeaderNames();
String str;
while((str=s.nextElement())!=null)
System.out.println(request.getHeader(str));
System.out.println();
//获取post携带数据流
String acceptjson;
try {
BufferedReader br = new BufferedReader(new InputStreamReader( (ServletInputStream) request.getInputStream(), "utf-8"));
StringBuffer sb = new StringBuffer("");
String temp;
while ((temp = br.readLine()) != null) {
sb.append(temp);
}
br.close();
acceptjson = sb.toString();
System.out.print(acceptjson);
} catch (Exception e) {
e.printStackTrace();
}
}

  其他三种请求处理方式类似。

最新文章

  1. PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点
  2. cordova添加platform
  3. jquery实现智能表单
  4. IIS 无法打开页面,只能重启的问题
  5. Diamond Armor - The most expensive Suit: 2.8 Mio Swiss Francs
  6. Asterisk 未来之路3.0_0001
  7. STL sort函数的用法
  8. Scala从入门到精通之四-映射和元组
  9. linux shell中单引号、双引号、反引号、反斜杠的区别
  10. WampServer &amp; XAMPP Configure with MariaDB and MySQL
  11. Java编程思想 学习笔记1
  12. 【leetcode】13-Roman2Integer
  13. ML: 聚类算法R包-网格聚类
  14. IIS中采用ISAPI-Rewrite防盗链
  15. kill 的常用信号
  16. [转载]文件系统缓存dirty_ratio与dirty_background_ra
  17. python学习笔记(5)--泡菜:永久存储
  18. 20165324 Java实验一
  19. javascript的八张思维导图
  20. SDK 开发 .a .framework .bundle (xcode引用) 依赖sdk工程

热门文章

  1. ios碎片小记
  2. iOS开源项目周报0223
  3. [转]bootstrap-datetimepicker 火狐浏览器报错
  4. WPF带占位符的TextBox
  5. 在jsp里调用out.flush()和response.flushBuffer()有什么区别
  6. 集群搭建之Hive配置要点
  7. java:模拟栈操作
  8. 【SSH网上商城项目实战03】使用EasyUI搭建后台页面框架
  9. CSS,js,html
  10. html5 表单 填表 select 下拉 textarea多行文本 output Js计算结果