Skip to content

ASD123-dsh/lan-file-transfer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAN File Transfer (局域网文件传输助手)

一个基于 Go + Web 的极简局域网文件传输工具。一键启动服务,局域网内其他设备只需通过浏览器即可上传、下载文件。

✨ 特性

  • 零配置启动:双击运行,自动打开浏览器。
  • 单文件分发:前端资源内嵌于 Go 二进制文件,无需安装依赖。
  • 跨平台支持:支持 Windows、macOS、Linux。
  • 全功能 Web 界面
    • 📂 下载页:文件列表展示、多文件下载、下载进度动画。
    • 🛡️ 管理后台:文件上传(带进度条)、文件删除。
  • 后台日志:控制台实时显示上传/下载/删除操作日志及 IP 来源。

🚀 快速开始

方式一:直接运行 (推荐)

  1. 下载最新发布的 lan-file-transfer.exe
  2. 双击运行。
  3. 浏览器会自动打开 http://localhost:8080
  4. 将文件拖入自动生成的 share 目录,或在后台 /admin 上传。
  5. 让局域网内其他设备访问控制台显示的 IP 地址(例如 http://192.168.1.5:8080)。

方式二:源码编译

# 1. 克隆仓库
git clone https://github.com/your-username/lan-file-transfer.git
cd lan-file-transfer

# 2. 运行开发模式
go run .

# 3. 编译发布版本
go build -o lan-file-transfer.exe .

🛠️ 命令行参数

支持以下可选参数:

./lan-file-transfer.exe [options]

  -port int
        服务端口 (默认 8080)
  -dir string
        共享文件目录 (默认 "share")
  -open bool
        启动时自动打开浏览器 (默认 true)
  -max-upload int
        最大上传文件大小(字节) (默认 1GB)

例如:

./lan-file-transfer.exe -port 9090 -dir D:\MyFiles -open=false

🏗️ 技术栈

  • Backend: Go (Golang) - 标准库 net/http
  • Frontend: HTML5, CSS3, Vanilla JS
  • Build: embed 特性实现单文件打包

📝 目录结构

.
├── main.go             # Go 后端入口与逻辑
├── go.mod              # Go 依赖管理
├── web/                # 前端静态资源
│   ├── index.html      # 下载页
│   ├── admin.html      # 管理后台
│   ├── app.js          # 下载页逻辑
│   ├── admin.js        # 管理页逻辑
│   └── styles.css      # 全局样式
└── README.md           # 说明文档

📄 License

MIT License

About

一个基于 Go + Web 的极简局域网文件传输工具。一键启动服务,局域网内其他设备只需通过浏览器即可上传、下载文件。

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors