Javaweb的request请求

1请求数据:

request.getMethod();获取请求方法

request.getContextPath();获取虚拟路径

request.getRequestURI()获取url  String类型

request.getRequestURL();获取url StringBuffer类型

request.getQueryString();获取请求参数

2请求头

request.getHearde()获取请求头

3.请求体:

request.getInputStream();获取字节输入流

request.getReader()获取字符输入流

request请求转发数据:

request.setAttribute("名字",数据)=》在前端页面可以yong${名字}发送数据

request.getRequserDispatcher("路径").forward(requset,response);//跳转

request.getAttribute("获取的名字")获取数据

通用方法获取参数:

1同过map集合获取参数

request.getParamerMap();第二步用map.Set()获取键,第三步通过增强for循环ma.get(key)获取值;

2通过对应参数值法:

第一步获取key request.getParamerValues("页面上的name")有多少写多少

第二步for循环输出

通过后端写入页面效果:

response.getWriter();获取字符输入流

onseresp.setContentType("text/html;charset=utf-8")//设置编码,防止乱码

字符输入流.writer()//写入数据。这里可以写HTML标签

response.getOutputStream()//获取字节输出流

字节输出流对象.write();

设置状态码:response.setStaus();

设置响应头response.setHeader("name",值)

response重定向(换位置访问):

 1设置setStauts(302)

2. resp.setHeader("location","http://localhost:8080/liang_war/n(这是第访问路径)");

简化方式重定向:

 resp.sendRedirect("http://localhost:8080/liang_war/n(这是第二个访问路径)");

重定向特点:
浏览器地址发生变化
可以到任何地址资源(服务器内部和外部都行)
 两次请求不能在多个资源使用requset共享数据

Java的世界里,HttpClient 是一个功能强大的Http请求库,然而接口非常复杂,设计上遵从正交性,简单的请求也需要写比较多的代码,更不要说隐藏在各种细节里面的高级用法了。Requests,  是一个模仿python requests 模块来设计的Http lib,拥有简单而灵活的API,在容易使用的同时,又能够满足各种高级定制的使用,可是说是当前最好用的Java Http Client Lib。 简单的请求示例:String url = ...; Response resp = Requests.get(url).text(); // post 和其他方法 resp = Requests.post(url).text(); resp = Requests.head(url).text(); //读取Http Response  int statusCode = resp.getStatusCode(); Headers headers = resp.getHeaders(); Cookies cookies = resp.getCookies(); String body = resp.getBody(); //response 返回其他类型 resp = Requests.get(url).text("UTF-8"); // get response as bytes Response resp1 = Requests.get(url).bytes(); // save response as file  Response resp2 = Requests.get(url).file("/path/to/save/file"); // url 参数: Map map = new HashMap(); map.put("k1", "v1"); map.put("k2", "v2"); Response resp = Requests.get(url).param("key1", "value1").params(map)         //.params(new Parameter(...), new Parameter(...))         .text(); // 请求头 Response resp = Requests.get(url).header("key1", "value1").headers(map)         //.headers(new Header(...), new Header(...))         .text(); // 添加Cookie: Map cookies = new HashMap(); Response resp = Requests.get(url).cookie("key1", "value1").cookies(map)         //.cookies(new Cookie(...), new Cookie(...))         .text(); //  设置 userAgent Response resp = Requests.get(url).userAgent(userAgent).text(); // 增加请求数据(post, put, patch方法) // send form-encoded data. x-www-form-urlencoded header will be send automatically Response resp = Requests.post(url).data(map).text(); // send string data String str = ...; resp = Requests.post(url).data(str, "UTF-8").text(); // send from inputStream InputStream in = ... resp = Requests.post(url).data(in).text(); // multipart 请求, 用于文件上传: Response resp = Requests.post(url).data(map).multiPart("ufile", "/path/to/file")         .multiPart(..., ...).text();请求设置://禁止自动重定向
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java编程者1年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值