【问题标题】:how HttpServletResponse process by browser浏览器如何处理 HttpServletResponse
【发布时间】:2014-04-29 10:20:38
【问题描述】:

在 servlet 应用程序中,Web 服务器将 HttpServletResponse 转发给浏览器,对吗? 然后浏览器将呈现它并显示 html。

但是浏览器期望的响应对象的确切类型是什么?是 HttpResponse 吗?那么不同类型的对象获取过程是如何产生的呢?

我对浏览器中的 HttpServletResponse 有点困惑。可以详细解释一下吗?

【问题讨论】:

    标签: java http servlets


    【解决方案1】:

    预期的响应对象浏览器的确切类型是什么?

    符合 HTTP 1.0 或 1.1 协议的响应字节流。

    是HttpResponse吗?

    不是,它是一个符合 HTTP 1.0 或 1.1 协议的字节流,用于响应。

    那么不同类型的对象获取过程是如何产生的呢?

    这句话不解析。再试一次。

    【讨论】:

    • 所以 HttpResponse 它实际上不是一个对象,正如你所说的字节流。 Http Response 只是浏览器接收到的字节流的名称。我说的对吗?
    • 我的困惑在 servlet doGet 方法中没有问题,我们从 HttpServletResponse 获取 PrintWriter,如下所示,PrintWriter out = response.getWriter(); out.println("

      " + 消息 + "

      ");那么服务器容器会创建一个读取那些 println 的字节流并将该字节流发送到服务器会发生什么?理解正确吗?
    【解决方案2】:

    HttpRequest 是一个 http 元素,用于将数据从客户端传输到服务器。 HttpResponse是http元素,用于将数据从服务器传输到客户端。

    响应基本上是在 HttpResponse 中发送的。 HttpResponse 通过网络通道作为二进制数据发送。

    HttpResponse 对象有以下内容;

    • 协议/版本、状态码及其说明
    • HTTP 响应标头
    • HTTP 响应正文

    我认为,您是在问浏览器如何发送和解释不同类型的对象,例如图像、音频或视频。浏览器通过 http 响应头中的 mime 类型来理解文件类型,然后解释其内容。

    另见

    MIME Types

    【讨论】:

    • 这是误导。它建议在客户端和服务器之间发送 HttpRequest 和 HttpResponse 对象。实际上,发送的是对象的信息内容。在远端,浏览器可能(或可能不)使用某种对象来表示请求或响应。但很有可能它们根本不会是 Java 对象。
    • 你是对的。我相应地编辑了我的帖子。我在我的帖子中没有提到 HttPServletRequest 或 HttpServletResponse。 @StephenC​​pan>
    猜你喜欢
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 2020-03-20
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    相关资源
    最近更新 更多