Firebase内部的ReactNative(ReactVR)websocket错误

时间:2017-04-24 08:24:21

标签: firebase react-native firebase-realtime-database react-360

我正在尝试从ReactVR内部使用Firebase实时数据库(它建立在ReactNative之上)。

当我尝试收听某个引用时,它会抛出Error during WebSocket handshake: Unexpected response code: 500

这是我用过的代码 -

export default class WelcomeToVR extends React.Component {

  constructor(){
    super();

    var config = {
      apiKey: "<REDACTED>",
      authDomain: "<REDACTED>",
      databaseURL: "<REDACTED>",
      projectId: "<REDACTED>",
      storageBucket: "<REDACTED>",
      messagingSenderId: "<REDACTED>",
    };
    firebase.initializeApp(config);
  }

  componentWillMount() {
    firebase.database().ref(`viewers`).on('child_added', function(data) {
      console.log(data);
    });
  }

  render() {
    return (
      <View>
      </View>
    );
  }
};

AppRegistry.registerComponent('WelcomeToVR', () => WelcomeToVR);

这是控制台中的痕迹 -

WebSocket connection to 'wss://myapp.firebaseio.com/.ws?v=5' failed: Error during WebSocket handshake: Unexpected response code: 500

WrappedWebSocket    @   VM1892:37
connect @   WebSocketModule.js:45
frame   @   ReactNativeContext.js:416
frame   @   createRootView.js:188
_frame  @   VRInstance.js:152

如果我在RN上下文之外运行此代码,则效果很好。

我觉得问题在于它试图连接的WS URL。

当我在RN上下文之外运行时,这是它尝试连接的URL - wss://s-usc1c-nss-107.firebaseio.com/.ws?v=5&ns=my-app

但是从RN组件内部,它会尝试 - wss://my-app.firebaseio.com/.ws?v=5

我有点迷失在这里。由于我无法访问Firebase.js源代码,因此无法对其进行调试。

在这里会有所帮助。 :)谢谢

0 个答案:

没有答案