Watch 1 Star 0 Fork 0

NiceLee / FileHttpServerApache-2.0

Join us
Explore and code with more than 2 million developers,Free private repositories !:)
Sign up
基于Java 原生TCPSocket实现的小型服务器Demo,能够访问开放目录下的文件夹及文件内容,支持断点续传。 通过常见浏览器即可访问。 spread retract

Clone or download
Loading...
README.md

FileHttpServer

基于Java 原生TCPSocket实现的小型服务器Demo,能够访问开放目录下的文件夹及文件内容,支持断点续传。
文件大小约1M大小哦。

特性

  • 参照Http协议进行实现,
  • 支持Http Basic授权认证(Demo级实现,账户名admin/密码admin,不保证安全)
  • 支持Http Chunked传输方式
  • 支持文件断点续传(流媒体拖拽播放也是可以的哦~(๑•̀ㅂ•́)و✧)

配置

配置从同级目录下的app.config中加载。

属性 默认值
nicelee.server.port 服务器监听端口 7777
nicelee.server.fixedPoolSize 目前使用fixedThreadPool管理Socket处理线程,可以看作是最大TCP并发连接数 30
nicelee.server.source 目的文件目录 .
nicelee.server.socketTimeout 最大socket连接时长,单位ms(针对TCP端口被长连接长时间占用) 120000

示例如下:

预览

  • 访问路径

  • /source目录下需要授权(Demo,可以是其它逻辑)

  • 认证失败

  • 认证成功

  • 禁止读取.txt文件(Demo,可以是其它逻辑)

注意

  • 该作品为http协议的学习实现,作者不对程序的安全性做任何保证!

其它

属性
位置 HKEY_CLASSES_ROOT\Applications\javaw.exe\shell\open\command
原始值 "...\bin\javaw.exe" -jar "%1"
现有值 "...\bin\javaw.exe" -Dfile.encoding=utf-8 -jar "%1"

更新日志

  • v1.3:
    • 修复了一个bug,该bug导致中文文件访问出现问题
  • v1.2:
    • 修复了一个bug,该bug导致中文目录访问出现问题
  • v1.1:
    • 改变配置的默认读取方式,方便拓展
    • 增加监控进程,关闭长时间连接的Socket连接(支持两种计算方式,可以区分报头和内容传输时间)
  • v1.0:
    • 参照Http协议进行实现,
    • 支持Http Basic授权认证(Demo级实现,账户名admin/密码admin,不保证安全)
    • 支持Http Chunked传输方式
    • 支持文件断点续传(流媒体拖拽播放也是可以的哦~(๑•̀ㅂ•́)و✧)

Comments ( 0 )

Sign in for post a comment

1
https://gitee.com/NiceLeee/FileHttpServer.git
git@gitee.com:NiceLeee/FileHttpServer.git
NiceLeee
FileHttpServer
FileHttpServer
master

Help Search

191139_cd20d5fd_5186603 191143_ebef6f8d_5186603