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

如何在Expo托管工作流应用中创建静态Web服务器

Expo托管工作流内置静态Web服务器实现方案

可以在Expo托管工作流(managed workflow)下实现应用内部静态Web服务器,不需要退出托管模式切换到bare工作流,目前有成熟的兼容方案:

方案1:使用适配Expo的静态服务器包(完整HTTP服务能力)

  • 选择带Expo Config Plugin的react-native-static-server依赖,可直接兼容EAS构建流程,不需要手动修改原生项目代码
  • 操作步骤:
    1. 安装依赖:npm install react-native-static-server @config-plugins/react-native-static-server
    2. 在app.json/app.config.js的plugins配置项中添加"@config-plugins/react-native-static-server"
    3. 业务代码中导入依赖,指定静态资源存放路径(通常存放在项目assets目录下)和自定义端口,调用启动方法即可,本地访问地址格式为http://localhost:<自定义端口>
  • 适用场景:需要完整HTTP服务能力、要对外暴露端口供同局域网其他设备访问、静态资源逻辑复杂的场景

方案2:WebView直接加载本地静态资源(轻量无额外依赖)

  • 如果只是需要在应用内加载本地的HTML、JS、CSS等静态资源,不需要对外提供HTTP服务,可直接使用react-native-webview的本地资源加载能力,不需要额外启动静态服务器
  • 操作步骤:将静态资源放入assets目录后,直接给WebView的source属性传入本地资源路径即可,底层会自动处理资源加载逻辑
  • 适用场景:仅应用内部使用静态资源、无对外提供服务需求的场景

注意事项

  • 托管工作流下不能使用需要手动修改原生项目代码的服务器类依赖,必须确认依赖提供了适配Expo的Config Plugin才能正常构建
  • Android端如果需要对外提供服务,需要在配置中添加网络访问权限;iOS端如果需要同局域网其他设备访问,需要申请本地网络权限
  • 应用退到后台时建议主动关闭服务器,避免不必要的资源占用和耗电

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:48:05