服务器socket.io on('connection')回调未被调用

时间:2017-08-09 06:13:55

标签: ios node.js swift socket.io digital-ocean

我正在使用Socket.io将Digital Ocean Node.js服务器连接到iOS Swift应用程序。我一直在使用与ngrok相同的代码来构建应用程序,我现在才转向数字海洋。

连接事件正在发生,因为Swift应用程序正在通过连接事件(即尝试提取数据)进行检查。但是,没有调用服务器上的回调,因此没有调用服务器上的任何侦听器。

我正在进行SocketIOClient的常规实例化,没有任何其他参数:

var socket: SocketIOClient = SocketIOClient(socketURL: URL(string: "https://my_domain.com")!)

服务器上的连接功能如下所示:

socket.on("connect") {data, ack in }

我有以下服务器依赖项:

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
var server = require('http').createServer(app);
var io = require('socket.io')(server);
var listeners = require('./listeners');
var bson = require('bson')
var MongoClient = require('mongodb').MongoClient;
var apn = require('apn');
var ObjectID = require('mongodb').ObjectID;
var querystring = require('querystring');

服务器上的连接功能如下所示:

io.on('connection', function(client) {
    console.log("connected")
})

问题是服务器上没有打印或发生任何事情。监听器在MongoClient.connect范围内,但是Mongo连接成功并且项目正在该函数中打印,所以事情就是停止使用on('connection')函数。

再次,这在ngrok上工作正常。

感谢任何帮助。

0 个答案:

没有答案