1.get和post区别
get方式提交的数据跟在url后面,由?开头,数据之间以&分隔
get提交的数据大小只有1KB
get请求可以建立书签
get请求一般是幂等的(重复请求不会对服务器端产生副作用)
post方式提交的数据在请求体中,数据之间由&分隔
post提交的数据大小不限
post请求不能建立书签
post请求一般是非幂等的(会对服务器产生副作用)
2.响应码
100-199 成功接收请求,要求客户端继续提交下一次请求才能完成处理过程
200-299 成功接收请求并完成处理过程
300-399 为了完成请求,客户端需要进一步细化请求
400-499 客户端出现错误
500-599 服务器出现错误
常用状态码
200 OK
302 经常和响应头中的重定向地址(Location: http://www.it315.org/index.jsp)一起使用
404 NOT FOUND
500 服务器产生错误
- 200 OK
- 301 Moved Permanently
- 302 Found
- 304 Not Modified
- 307 Temporary Redirect
- 400 Bad Request
- 401 Unauthorized
- 403 Forbidden
- 404 Not Found
- 410 Gone
- 500 Internal Server Error
- 501 Not Implemented
3.request常用方法
获取GET方式参数:
request.getQueryString();
获取POST方式参数:
request.getInputStream();
核心的API:
request.getParameter("参数名"); 根据参数名获取参数值(注意,只能获取一个值的参数)
request.getParameterValue("参数名“);根据参数名获取参数值(可以获取多个值的参数)
request.getParameterNames(); 获取所有参数名称列表
修改POST方式参数编码:
request.setCharacterEncoding("utf-8");(只对POST方法提交的参数有效,对GET方式提交的参数无效)
修改GET方式参数编码:
手动解码:String name = new String(name.getBytes("iso-8859-1"),"utf-8");
4.response常用方法
response.setStatus();设置返回码
response.setHeader("Content-Disposition","attachment;filename=name");设置响应头,下载文件
response.setContentType("text/html;charset=utf-8");
response.getWriter().write();
response.getOutputStream().write();
response.setCharacterEncoding("utf-8");