• request和response对象常用方法


    request:

    request.getRequestURL(): 浏览器发出请求时的完整URL,包括协议 主机名 端口(如果有)" 
    request.getRequestURI(): 浏览器发出请求的资源名部分,去掉了协议和主机名" 
    request.getQueryString(): 请求行中的参数部分,只能显示以get方式发出的参数,post方式的看不到
    request.getRemoteAddr(): 浏览器所处于的客户机的IP地址
    request.getRemoteHost(): 浏览器所处于的客户机的主机名
    request.getRemotePort(): 浏览器所处于的客户机使用的网络端口
    request.getLocalAddr(): 服务器的IP地址
    request.getLocalName(): 服务器的主机名
    request.getMethod(): 得到客户机请求方式一般是GET或者POST

    request.getParameter(): 是常见的方法,用于获取单值的参数
    request.getParameterValues(): 用于获取具有多值的参数,比如注册时候提交的 "hobits",可以是多选的。
    request.getParameterMap(): 用于遍历所有的参数,并返回Map类型。

    response:设置响应编码有两种方式

     
    1. response.setContentType("text/html; charset=UTF-8");
    2. response.setCharacterEncoding("UTF-8");
     这两种方式都需要在response.getWriter调用之前执行才能生效

    他们的区别在于

    1. response.setContentType("text/html; charset=UTF-8");

    不仅发送到浏览器的内容会使用UTF-8编码,而且还通知浏览器使用UTF-8编码方式进行显示。所以总能正常显示中文

    2. response.setCharacterEncoding("UTF-8");

    仅仅是发送的浏览器的内容是UTF-8编码的,至于浏览器是用哪种编码方式显示不管。 所以当浏览器的显示编码方式不是UTF-8的时候,就会看到乱码,需要手动再进行一次设置。

    设置响应格式,设置响应编码,设置响应内容

    客户端有两种跳转
    302 表示临时跳转
    301 表示永久性跳转

    302就是前面在客户端跳转章节用到过的

     
    response.sendRedirect("fail.html");
     



    301要使用另外的手段:

     
    response.setStatus(301);
    response.setHeader("Location", "fail.html");
     


    用户感受不出这两种跳转的区别,但是可以借助火狐的调试工具看到响应的头信息是:
    301 Moved Permanently。

  • 相关阅读:
    P3834 【模板】可持久化线段树 (静态主席树)
    P3834 【模板】可持久化线段树 (静态主席树)
    2019 南昌网络赛 I. Max answer
    Linux从入门到精通——系统的进程
    Linux从入门到精通——文件权限
    Linux从入门到精通——命令行使用技巧
    Linux从入门到精通——Linux系统的文件及其管理
    Linux从入门到精通——vim及管理输入输出
    Linux从入门到精通——用户管理
    thiny mission 2021 10 15
  • 原文地址:https://www.cnblogs.com/zrmj/p/11380809.html
Copyright © 2020-2023  润新知