• HTTP协议


    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 服务器产生错误

     

    1. 200 OK
    2. 301 Moved Permanently
    3. 302 Found
    4. 304 Not Modified
    5. 307 Temporary Redirect
    6. 400 Bad Request
    7. 401 Unauthorized
    8. 403 Forbidden
    9. 404 Not Found
    10. 410 Gone
    11. 500 Internal Server Error
    12. 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");

  • 相关阅读:
    诡异的楼梯 HDU1180
    selenium的那些命令:
    权限管理:
    图片裁剪:
    2-15 showapiRequest解决图片验证码识别.py
    2-14 使用pytesseract识别图片中得问题.py
    使用C#开发ActiveX控件 11
    Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
    Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
    Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
  • 原文地址:https://www.cnblogs.com/juaner767/p/5710350.html
Copyright © 2020-2023  润新知