Java 运行Netty HttpStaticFileServer示例
我对在我正在进行的项目中使用Netty感到非常兴奋,但是在很大的压力下,我需要快速跟上进度。我是一名经验丰富的Java程序员,但在编写客户机-服务器系统方面没有太多经验Java 运行Netty HttpStaticFileServer示例,java,netty,fileserver,Java,Netty,Fileserver,我对在我正在进行的项目中使用Netty感到非常兴奋,但是在很大的压力下,我需要快速跟上进度。我是一名经验丰富的Java程序员,但在编写客户机-服务器系统方面没有太多经验 我正在研究这些复杂的例子,但发现关于如何正确运行它们的文档并不多。诚然,在源代码中挖掘是很有用的,但是当我访问HttpStaticFileServer时,我已经用这种方法撞到了墙。客户端请求可能来自telnet,但我不知道文件请求本身的格式,我尝试了一些。处理器编解码器根本不清楚。因此,一般来说,如果有一组关于如何运行示例的说明
我正在研究这些复杂的例子,但发现关于如何正确运行它们的文档并不多。诚然,在源代码中挖掘是很有用的,但是当我访问HttpStaticFileServer时,我已经用这种方法撞到了墙。客户端请求可能来自telnet,但我不知道文件请求本身的格式,我尝试了一些。处理器编解码器根本不清楚。因此,一般来说,如果有一组关于如何运行示例的说明就好了。我保证我会在调试器中监视整个过程,这样我就可以跟踪到底发生了什么。因此,至少就目前而言,我希望为文件服务器提供一个简单的示例。我想构建的应用程序将从我怀疑的基础上构建。谢谢你的帮助 HttpStaticFileServer将提供文件系统中的文件 请参阅HttpStaticFileServerHandler..sanitizeUri()。这是它将您输入浏览器的虚拟路径映射到物理路径的位置 所以
http://localhost:8080/afile.txt
将映射到~/afile.txt
。只要在那里放一个file.txt,它就会显示在你的浏览器中
你可能想先试试这个例子。我在eclipse中加载netty(记住使用JDK7)并运行/调试示例应用程序。我在带有eclipse的Windows上运行了HttpStaticFileServer
要测试该示例,请执行以下简单步骤:
该文件应位于
System.getProperty(“user.dir”)
看看这个问题的答案
对我来说,它指向eclipse工作区目录。因此,请使用工作区或更改HttpStaticFileServerHandler
中的sanitizeUri(字符串uri)
方法以返回:
rootPath + File.separator + uri;
而不是
return System.getProperty("user.dir") + File.separator + uri;
其中rootPath是指向文件服务器根目录的路径。我也尝试使用浏览器发出请求,选择URL:。这给了我一个禁止的403。对不起……我觉得这是某种入会仪式,我想我失败了。但是一个简单的单行示例确实会有帮助…我转到HttpUploadServer,并能够找出其中的一个…因此,作为本示例文档中的建议,请添加UploadClient参数示例说明“/c:/test.txt”