Http服务器如何创建请求头和响应头
问题描述:
SOS SOS SOS请! 我在java中创建了一个原始的HttpServer,它监听端口80并使用Get方法打开一个文件etc(127.0.0.1/index.html)。我想创建HTTP/1.1(RFC 2616)协议的请求头(Accept,Accept Language,User-Agent)和响应头(Content-Length和Cache-Control)。 你能帮助我如何做到这一点......你将拯救我的生命!!!!!!!! 谢谢!Http服务器如何创建请求头和响应头
答
标题只是在初始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)
P.S. Java有一个内置的HTTP服务器,你知道吗?
com.sun.net.HttpServer:
HttpServer httpServer = HttpServer.create(new InetSocketAddress(port), 5);
httpServer.createContext("/", new MyRequestHandler());
httpServer.setExecutor(Executors.newCachedThreadPool());
httpServer.start();
这是一个家庭作业? – eykanal 2011-05-06 15:33:49
我不明白 - 如果你编写了你自己的服务器,它应该像写入适当的字符串到输出流然后是新行一样简单 - 这就是所有的头文件,符合某些限制的'name:value'对了解他们在回应中出现的位置和方式。 – 2011-05-06 15:35:03
是的,如果你真的阅读RFC,你会看到这是多么容易。 – 2011-05-06 15:41:36