java - 从java套接字发送html

标签 java html sockets output

我正在尝试使用包装在 BufferedWriter 中的 Java 套接字发送“index.html”代码。当我打开浏览器并连接到“localhost:port”时,我得到:

  • 文本输出 ( <head>...</head> <body>...</body> ) - firefox@linux
  • 文本输出 - chrome@linux
  • 正确的网页 View - konqueror@linux
  • 文本输出 - firefox@windows7

如何修复此问题以获得每个浏览器的正确 View ?

最佳答案

How can I fix this to get correct view for every browser?

根据您的描述,听起来您的代码严重违反了 HTTP 协议(protocol),并且每个浏览器对此违规的处理方式有所不同。您需要做的第一件事是温习 HTTP,请参阅 http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html#sec6

听起来您没有发送响应状态行、必需的 header (包括 Content-Length 等),然后是消息正文(您的 index.html)

阅读 RFC2616 并了解遵守 HTTP 协议(protocol)所涉及的内容后,您可能需要重新考虑自己执行此操作,并考虑使用任何一个框架来为您处理此问题 - TomcatJetty是非常流行的基于 Java 的 HTTP 框架。 Netty也是一种选择,成为更轻量级的可定制框架。

关于java - 从java套接字发送html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13517759/

相关文章:

java - 从 Java 桌面编程到 Android 应用程序开发

java - 如何从 Java 应用程序中确定 JVM 最小堆大小?

java - java servlet 中的 html 表单处理

html img 百分比在 ipad 中看起来很尴尬

c# - 如何在高度可靠的批量传输期间减少 TCP ACK 的数量

java - http方法在servlet中如何工作?

html - 背景图像不可见

html - Jquery 同位素 masonry 布局在 Bootstrap 3 中的元素之间留下间隙

c - epoll_wait 接收未知事件

c - 如何限制 C 中的套接字速度?