2

我正在尝试将此消息实体正文发送给客户端。但是,这个消息似乎没有被传送。导致这种情况的可能原因是什么?字符串消息

String message = "HTTP/1.0 404 Not Found\r\n" +
                  "Server: " + 
                 "Content-type: html" +
                 "error\r\n" +
                 "<HTML>" +
                 "<HEAD><TITLE>404</TITLE></HEAD>" +
                 "<BODY>404 Not Found" +
                 "<br> nothing </BODY></HTML>" ;

然后,我使用 PrintStream instace 发送消息,它的参数是message.getBytes()

在浏览器上看不到 html 消息。

  PrintStream sender = new PrintStream(this.socket.getOutputStream());

  String message = // above lines

  sender.write(message.getBytes())
4

1 回答 1

1

假设您通过原始套接字发送此数据,您需要修复以下问题:

  • 每个标题后都需要一个 CRLF(回车,换行)。
  • 标头字段中不应包含“:”字符。
  • Content-type应该是Content-Type,并且没有命名的标准标题error(除非那是您发送的自定义标题,否则将其删除)。
  • html不是有效的内容类型,请尝试text/html.
于 2013-03-26T10:41:35.370 回答