reactjs 如何配置一个react capacitor应用程序通过usb在移动的上运行,以本地主机而不是IP地址向sendbird发出http请求?

r7knjye2  于 2023-01-30  发布在  React
关注(0)|答案(1)|浏览(114)

我有一个React Web应用程序,我已经使用Capacitor将其转换为本机应用程序。对于实时重载,我必须编辑capacitor.config.json如下:

const config: CapacitorConfig = {
  //
  webDir: 'build',
  bundledWebRuntime: false,
  server: {
    url: 'http://192.XXX.XXX:3000',
    cleartext: true
  },
};

在应用程序向sendbird请求初始化之前,这一切都很正常。我收到了错误消息:“SendBirdCall需要https连接,”localhost“或”127.0.0.1“除外。我尝试设置一个快速https服务器,但失败了。后来我使用ngrok创建了两个通道-一个用于服务器,一个用于应用程序。sendbird请求成功,但graphql WebSocket失败,因为ngrok不支持websocket链接,还尝试了tcp链接,但也失败了。”
我有另一个应用程序,我创建了使用SendbirdReact本地快速启动项目,我不需要做任何配置。什么可以做,以使sendbird请求使用localhost从移动的连接通过usb,同时也能够有一个ws连接?

jogvjijk

jogvjijk1#

尝试更改url

const config: CapacitorConfig = {
  ...
  server: {
    url: 'http://localhost:3000',
    cleartext: true
  },
};

连接物理设备后,执行以下操作:

cd $ANDROID_HOME/platform-tools
./adb reverse tcp:3000 tcp:3000

其中$ANDROID_HOME是Android SDK目录。

相关问题