You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用NodeJS创建可运行ExpressJS服务器的私人热点?

用Node.js + Express实现离线私人热点文件共享站点

核心逻辑

先让电脑创建不依赖外部Wi-Fi的本地私人热点,将Express服务器绑定到热点的私有IP上,手机连接该热点后即可访问站点,实现离线双向文件传输。


步骤1:创建电脑私人热点

不同操作系统的创建命令不同,以下是主流系统的操作方式:

Windows

  1. 打开管理员权限的命令提示符,执行以下命令创建热点:
    netsh wlan set hostednetwork mode=allow ssid=MyFileShare key=YourStrongPassword123
    
    • ssid是热点名称,key是热点密码(至少8位)
  2. 启动热点:
    netsh wlan start hostednetwork
    
  3. 开启网络共享(可选,若需要电脑同时联网但不影响热点使用):
    • 打开「网络和共享中心」→ 更改适配器设置
    • 右键点击当前联网的适配器(如以太网)→ 属性 → 共享
    • 勾选「允许其他网络用户通过此计算机的Internet连接来连接」,选择刚才创建的热点适配器(一般叫「本地连接*1」)

macOS

  1. 打开终端,执行以下命令创建热点(适用于macOS 10.14+):
    networksetup -createWi-FiHotspot "Wi-Fi" MyFileShare YourStrongPassword123
    
    • 若命令报错,可通过系统偏好设置操作:打开「共享」→ 勾选「互联网共享」→ 来源选「Wi-Fi」→ 勾选「Wi-Fi」并设置热点名称和密码

Linux

  1. 先安装热点工具create_ap(以Ubuntu为例):
    sudo apt update && sudo apt install create-ap
    
  2. 创建热点(无以太网时):
    sudo create_ap wlan0 MyFileShare YourStrongPassword123
    
    • 若电脑同时连以太网,可让热点共享网络:
      sudo create_ap wlan0 eth0 MyFileShare YourStrongPassword123
      

步骤2:获取热点的私有IP地址

需要找到热点适配器对应的IPv4地址,用于绑定Express服务器:

  • Windows:执行ipconfig,找到「无线局域网适配器 本地连接*X」下的IPv4地址(通常为192.168.137.1)
  • macOS:执行ipconfig getifaddr en0(en0是Wi-Fi接口,若不对可换en1)
  • Linux:执行ip addr show wlan0,找到inet字段后的IP地址(如192.168.4.1)

步骤3:配置Express服务器绑定热点IP

修改你的Express项目代码,将服务器监听地址设置为热点IP,而非默认的localhost:

const express = require('express');
const app = express();
const path = require('path');
const multer = require('multer'); // 用于处理文件上传(双向传输必备)
const PORT = 3000;
const HOTSPOT_IP = '192.168.137.1'; // 替换为你的热点IP

// 配置文件上传存储
const storage = multer.diskStorage({
  destination: (req, file, cb) => {
    cb(null, './uploads'); // 上传文件存储目录,需提前创建
  },
  filename: (req, file, cb) => {
    cb(null, Date.now() + '-' + file.originalname);
  }
});
const upload = multer({ storage: storage });

// 托管静态页面(你的文件共享站点前端)
app.use(express.static(path.join(__dirname, 'public')));

// 文件上传接口(手机传文件到电脑)
app.post('/upload', upload.single('file'), (req, res) => {
  res.json({ success: true, message: '文件上传成功' });
});

// 文件下载接口(电脑传文件到手机)
app.get('/download/:filename', (req, res) => {
  const filename = req.params.filename;
  const filePath = path.join(__dirname, 'uploads', filename);
  res.download(filePath);
});

// 启动服务器
app.listen(PORT, HOTSPOT_IP, () => {
  console.log(`文件共享站点运行在 http://${HOTSPOT_IP}:${PORT}`);
});

步骤4:测试离线传输

  1. 手机连接你创建的私人热点(SSID为MyFileShare,密码为你设置的密码)
  2. 在手机浏览器输入http://[热点IP]:3000,即可访问你的文件共享站点
  3. 测试双向文件传输功能,确认正常运行

注意事项

  • 确保电脑防火墙允许3000端口(或你设置的端口)的入站连接,否则手机无法访问服务器
  • 若热点创建失败,检查电脑无线网卡是否支持热点功能(部分旧网卡不支持)
  • uploads和public目录需提前在项目根目录创建

内容的提问来源于stack exchange,提问作者WhatTheClown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:05:36