使用本地 HTTPS 开发
编辑
学习如何为 Expo Web 应用程序设置本地 HTTPS。
在本地开发 Expo Web 应用程序时,您可能需要在本地开发环境中使用 HTTPS 来测试安全的浏览器 API。本指南将向您展示如何为 Expo Web 应用程序设置本地 HTTPS。
前提条件
本指南要求您的机器上安装以下工具:
mkcert:用于创建开发证书的工具。有关安装说明,请参见mkcertGitHub 仓库。
优势
- 团队可扩展性:相同的设置适用于每个人
- 身份验证支持:仅限 HTTP 的 Cookie 和安全上下文
- 生产环境一致性:与您的生产 HTTPS 环境匹配
- 易于共享:团队中一致的开发 URL
设置您的项目
1
创建或导航到您的 Expo 项目:
Terminal
# 创建新项目(如有需要)- npx create-expo-app@latest example-app- cd example-app# 或导航到现有项目- cd your-expo-project2
启动您的 Expo 开发服务器:
Terminal
- npx expo start --web您的应用程序将在 http://localhost:8081 上运行。请保持此终端窗口打开。
3
使用 mkcert 为 localhost 生成证书。在新的终端窗口中从项目的根目录运行以下命令:
Terminal
- mkcert localhost提示:确保在安装mkcert后运行mkcert -install以安装本地证书颁发机构(CA)。
这将在项目的根目录中生成两个签名证书文件:localhost.pem(证书)和 localhost-key.pem(私钥)。
4
在项目的根目录中,运行以下命令以启动代理:
Terminal
- npx local-ssl-proxy --source 443 --target 8081 --cert localhost.pem --key localhost-key.pem提示:local-ssl-proxy是一个创建代理服务器的工具,它将来自 443 端口的 HTTPS 流量转发到您在 8081 端口上的 Expo 开发服务器。
这将创建一个将 HTTPS 流量从 443 端口转发到您在 8081 端口上的 Expo 开发服务器的代理。
5
在您的浏览器中打开 https://localhost 以访问您的应用程序。您的Expo 应用程序现在正在使用 HTTPS 运行。