React native + SSL socket:错误:xhr轮询错误

时间:2017-04-03 09:15:27

标签: node.js sockets ssl react-native

我正在使用socket.io-client将来自本机应用的套接字连接到ssl套接字服务器,并在connect-error事件 - [Error: xhr poll error]处收到错误。

以下是来自本地(客户端)的代码:

import io from 'socket.io-client';

import Config from '../../config';

var socketConfig = {
    secure: true
}

function connect() {
    this.socket = io(Config.notificationUrl, socketConfig);
    // this.socket.connect();

    this.socket.on('connect', () => console.log("Socket connected", self.socket.id));
    this.socket.on('connect_error', (err) => console.log("connect_error", err));
    this.socket.on('error', (err) => console.log("error", err));
}

我曾尝试向socketConfig添加传输:['websocket','polling'],但我还有其他错误[Error: websocket error]。还尝试使用import io from 'socket.io-client/dist/socket.io',但没有区别。

注意:我成功连接到使用http协议的套接字服务器。

我正在使用react native 0.40.0和socket.io-client 1.7.3。

2 个答案:

答案 0 :(得分:0)

如果您设置“ rejectUnauthorized = false”,则不安全。

  

https://socket.io/docs/client-api/#With-a-self-signed-certificate   

// option 2. WARNING: it leaves you vulnerable to MITM attacks!
  rejectUnauthorized: false

答案 1 :(得分:0)

安装2.4.0 socket.io client

这个版本有engine.io 3.5.0

它解决了我的问题。