其实我也不想做伸手党。。。。可是 好晕啊
发布于 1年前 作者 alkiller22 806 次浏览

编写简单的HTTP1.0服务器程序

  • 构建端口为8000的简单HTTP1.0服务器程序;
  • 该服务器能够对所有的请求(不论是否合法)都给予应答,其中要求对 HTTP 的 GET 方法根据 RFC 规定给予成功的响应;
  • 在任何情况下,服务器都要能够提供服务;
  • 通过给命令行传递参数指定服务器的默认访问目录(例如把c:\www作为 命令行参数传递给服务器,那么如果客户发送请求 GET /test/index.html, 那么服务器应该把文件 C:\www\test\index.html 发送给客户端,如果文件 不存在应该提示出错);(可选)
  • 服务器在成功地给予响应的同时,应该能够根据文件的扩展名,推断出至 少 2 种文件的 MIME 类型(例如如果文件的扩展名为.htm 或者.html,那 么文件的 MIME 类型为 text/html);
  • 服务器能够响应嵌入JPEG文件的HTML页面;
  • 能够通过 Netscape or Internet Explorer 浏览器访问 HTTP1.0 服务器中存放 的Web页
6 回复

看见Netscape了,这道题很老了吧!

是啊。。。 学校的的教材 是用JAVA做。。。。 版本也很老了 , 我想顺带用NodeJS做 然后正好学一学 , 可惜 略头大。。。不知道怎么开头 , 想看看别人做个DEMO 然后我好拓展

@alkiller22

我也是新手,看了一下似乎都是hello world中的内容,空闲一些,我试着写个例子好了。


  • 构建端口为8000的简单HTTP1.0服务器程序; 监听8000端口
  • 该服务器能够对所有的请求(不论是否合法)都给予应答,其中要求对HTTP 的 GET 方法根据 RFC 规定给予成功的响应; 同上,RFC规定没有去查,我理解是只要访问都要有应答,路由可以实现任何页面都要有输出,做个输出404
  • 在任何情况下,服务器都要能够提供服务; 这道题我不太明白,不知道是不是说要任何情况下都要有日志输出,还是要输出404
  • 通过给命令行传递参数指定服务器的默认访问目录(例如把c:\www作为命令行参数传递给服务器,那么如果客户发送请求 GET /test/index.html, 那么服务器应该把文件 C:\www\test\index.html 发送给客户端,如果文件 不存在应该提示出错);(可选) 路由可以实现
  • 服务器在成功地给予响应的同时,应该能够根据文件的扩展名,推断出至 少 2 种文件的 MIME 类型(例如如果文件的扩展名为.htm 或者.html,那 么文件的 MIME 类型为 text/html); 大概是获取http头信息,然后修改Content-Type吧
  • 服务器能够响应嵌入JPEG文件的HTML页面; 修改Content-Type为图片类型,访问的html的时候就是图片了
  • 能够通过 Netscape or Internet Explorer 浏览器访问 HTTP1.0 服务器中存放 的Web页 监听8000端口

可以看看社区朴灵写的“用NodeJS打造你的静态文件服务器”,你需要了解的东西里面基本都有,由浅到深入,通俗易懂,这个是链接,http://cnodejs.org/topic/4f16442ccae1f4aa27001071

我基本做完了 谢谢楼上的指点!!!十分感谢!!!!

回到顶部