React Native Expo 访问 VPN 端点

React Native Expo access VPN endpoint

我正在使用 React Native Expo 开发一个项目,该项目需要在使用 SSTP 隧道的 VPN 连接覆盖的端点上获取 JSON 文档。

我一直在 Android 模拟器和 iOS 模拟器上开发,我的电脑配置了 VPN 连接并且它工作正常没有任何问题,模拟器上的应用程序可以获取请求 url 并获取 json 文档。

当我尝试使用隧道或 lan 方法在真实设备上公开我的应用程序时,该应用程序已成功安装但无法获取 url,它总是说 Http 请求抛出网络请求失败。两者在同一个网络中,有什么原因或线索吗?

经过一番挖掘,我终于找到了我想要的东西。基本上我需要做的就是通过使用 ngrok 或其他用于相同目的的程序来公开我的 VPN Web 服务连接。该程序将创建一个隧道(HTTP 和 HTTPS),在防火墙上创建一个漏洞并自定义 URL 访问。

有很多方法可以做到这一点,对我来说 ngrok 是最好的但是这个 link 帮助我理解了很多:How to call a locally hosted server from Expo? and also the ngrok documentation and How to Run Ngrok to Test & Share Your Local Development