【问题标题】:Http-Server How to Create Request-Headers and response-HeadersHttp-Server 如何创建请求标头和响应标头
【发布时间】:2011-05-06 15:26:46
【问题描述】:

求救求救求救!!! 我在 java 中创建了一个原始 HttpServer,它侦听端口 80 并使用 Get 方法打开文件等(127.0.0.1/index.html)。我想从 HTTP/1.1 (RFC 2616) 协议创建请求标头(接受、接受语言、用户代理)和响应标头(内容长度和缓存控制)。 你能帮我怎么做吗...你会救我的命!!!!!!!!! 谢谢!

【问题讨论】:

  • 这是家庭作业吗?
  • 我不明白 - 如果你已经编写了自己的服务器,它应该像将适当的字符串写入输出流然后换行一样简单 - 这就是标题的全部内容,@987654321 @ 对遵循它们在响应中出现的位置和方式的某些限制。
  • 是的,如果你真的阅读了 RFC,你就会明白这有多简单。
  • 只有老手才能阅读文档,伙计!

标签: java http-headers httpserver request-headers rfc2616


【解决方案1】:

标题只是初始 GET/POST/* 操作之后的行。最后一个标题与内容用空行分隔。因此,您需要做的所有事情(在客户端和服务器端)就是在内容之前的请求/响应中写几行。

HTTP/1.0 200 OK
Date: Fri, 31 Dec 1999 23:59:59 GMT
Content-Type: text/html
Content-Length: 1354

<html>
<body>
...
(more file contents)

附: Java 有一个内置的 HTTP 服务器,你知道吗?

com.sun.net.HttpServer:

HttpServer httpServer = HttpServer.create(new InetSocketAddress(port), 5);
httpServer.createContext("/", new MyRequestHandler());
httpServer.setExecutor(Executors.newCachedThreadPool());
httpServer.start();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-20
    • 2016-05-06
    • 2014-12-18
    • 2021-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多