zoukankan      html  css  js  c++  java
  • 内置对象-Response对象

    MIME

    是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开,比如是mp4,就会用什么软件播放。

    https://www.cnblogs.com/tjudzj/p/6528008.html

    一直是这个错误,最后才发现,

    request.getRequestDispatcher("request.jsp").forward(request, response);

    代码里有这一行,而我又把request.jsp删除了。

    输出的顺序和代码里的不一样:

     

    Printerwriter的输出总是在内置的out对象之前

    使用out.flush();清空缓冲区,可以在清空的时候,强制把缓冲区的内容打印,这样顺序就对了。

    请求重定向:

    此时前面的flush需要注释,不然会抛出异常。

    out.flush()是强制刷新,不管response缓存是否满,都必须向客户端发出,本来请求重定向信息也是要保存在response里发送给客户端的,结果重定向信息还没有写进去你就把缓存发出去了,客户端就无法接收到重定向的信息,会造成信息丢失,所以编译器不允许你将out.flush()写在重定向前面

    response页面一旦调用一个flush()方法后,代表该response已经提交, 执行完毕,不能再使用

    response是服务端对客户端请求的一个响应,其中封装了响应头、状态码、内容等,服务端在把response提交到客户端之前,会向缓冲区内写入响应头和状态码,然后将所有内容flush。

    这就标志着该次响应已committed(提交)。对于当前页面中已经committed(提交)的response,就不能再使用这个response向缓冲区写任何东西

    (注:同一个页面中的response.XXX()是同一个response的不同方法,只要其中一个已经导致了committed,那么其它类似方式的调用都会导致 IllegalStateException异常)

    刷新页面,页面会跳转:

    此时地址也变了。

  • 相关阅读:
    Linux如何同步时间/更新时间
    Linux关机/重启/及注销命令
    Linux如何查看别名和取消别名
    Linux查看历史记录
    Linux命令行快捷键有哪些
    win10产品密钥 win10永久激活密钥(可激活win10所有版本 )
    Xshell如何连接
    Xshell6 优化
    逻辑运算符
    可变类型与不可变类型
  • 原文地址:https://www.cnblogs.com/youwuyi/p/10233852.html
Copyright © 2011-2022 走看看