# FileShare **Repository Path**: hhh917/file-share ## Basic Information - **Project Name**: FileShare - **Description**: FileShare - 局域网文件共享服务 一个基于 Node.js 的局域网文件共享服务,支持文件、文件夹和文本的共享。 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-10 - **Last Updated**: 2025-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FileShare - 局域网文件共享服务 一个基于 Node.js 的局域网文件共享服务,支持文件、文件夹和文本的共享。 ## 功能特性 1. **多平台支持** - 支持 Windows、macOS 和 Linux 2. **多种共享类型** - 支持文件、文件夹和文本共享 3. **二维码访问** - 自动生成二维码,方便移动设备扫描访问 4. **密码保护** - 可选的密码保护功能 5. **拖拽上传** - 支持拖拽文件上传 6. **响应式设计** - 适配手机和电脑端 7. **多IP支持** - 自动检测并支持本机所有可用IP地址 8. **服务控制** - 本地用户可以启动/停止整个服务 9. **文本分享** - 支持创建和分享文本内容,可在弹窗中查看和复制 10. **文件名修复** - 自动修复中文文件名编码问题 11. **实时统计** - 显示文件、文件夹和文本的数量及总大小 ## 安装与启动 ### 安装依赖 ```bash npm install ``` ### 启动服务 ```bash # 使用默认配置启动 (端口 5321, 共享目录 ./shared) npm start # 自定义端口和共享目录 node server.js --port 8080 --dir ./my-shared-files # 启用密码保护 node server.js --port 5321 --dir ./shared --password mysecretpassword ``` ### 快捷启动脚本 - Windows: 双击 `start.bat` 或在命令行运行 `start.bat` - Linux/macOS: 在终端运行 `./start.sh` ## 使用说明 1. 启动服务后,会在控制台输出访问地址和二维码 2. 在浏览器中打开该地址即可访问文件共享页面 3. 可以通过以下方式添加共享内容: - 点击"上传文件"按钮选择文件上传 - 拖拽文件到页面底部的上传区域 - 点击"分享文本"按钮创建文本共享 4. 所有共享内容会显示在表格中,可以进行下载或删除操作 5. 本地用户(访问本机地址的用户)拥有完整权限: - 可以设置/修改密码保护 - 可以启动/停止服务 - 可以删除任意文件 - 可以清空所有共享内容 6. 远程用户需要密码才能访问(如果启用了密码保护) 7. 文本内容可以在弹窗中查看,并支持一键复制标题和内容 ## 命令行参数 - `-p, --port` - 指定服务端口 (默认: 5321) - `-d, --dir` - 指定共享目录路径 (默认: ./shared) - `--password` - 设置访问密码 (可选) ## 目录结构 ``` . ├── server.js # 服务端主程序 ├── package.json # 项目配置和依赖 ├── README.md # 说明文档 ├── start.bat # Windows启动脚本 ├── start.sh # Linux/macOS启动脚本 ├── public/ # 前端静态资源 │ ├── index.html # 主页面 │ ├── password.html # 密码输入页面 │ ├── styles.css # 样式表 │ ├── vue.global.js # Vue.js框架 │ └── app.js # 前端逻辑 └── shared/ # 默认共享目录 ``` ## 权限说明 系统区分本地用户和远程用户: - **本地用户**:访问本机地址(如 localhost、127.0.0.1 或本机IP)的用户 - 拥有完整权限 - 可以上传、删除文件 - 可以设置/修改密码保护 - 可以启动/停止服务 - 可以清空所有共享内容 - **远程用户**:通过网络访问的其他设备用户 - 仅能查看和下载文件 - 需要正确密码才能访问(如果启用了密码保护) - 无法执行管理操作 ## 安全提示 1. 此工具仅适用于可信的局域网环境 2. 如需在公网使用,请增加额外的安全措施 3. 密码以明文形式传递,实际部署时建议使用加密存储 4. 服务停止时,远程用户将无法访问 ## 效果 ![img.png](img.png) ![img_1.png](img_1.png) ![img_2.png](img_2.png)