@@ -34,18 +34,22 @@ module.exports.init = function(server, clientEvents, bs) {
34
34
35
35
var socketIoConfig = socketConfig . socketIoOptions ;
36
36
socketIoConfig . path = socketConfig . path ;
37
+ // set pingTimeout from clients.heartbeatTimeout after heartbeat reversal in engine.io@4
38
+ // https://socket.io/blog/engine-io-4-release/#Heartbeat-mechanism-reversal
39
+ socketIoConfig . pingTimeout = socketConfig . clients . heartbeatTimeout ;
40
+ // enable cors for any domain after socket.io@3
41
+ // https://socket.io/docs/v3/migrating-from-2-x-to-3-0/#cors-handling
42
+ socketIoConfig . cors = {
43
+ origins : ( origin , callback ) => callback ( null , origin )
44
+ }
37
45
46
+ // create instance of socket.io Server
38
47
var io = socket ( server , socketIoConfig ) ;
48
+ // move internal sockets property back to connected to maintain backwards compatibility after socket.io@3
49
+ // https://socket.io/docs/v3/migrating-from-2-x-to-3-0/#namespaceconnected-is-renamed-to-namespacesockets-and-is-now-a-map
39
50
40
- // Override default namespace.
41
- io . sockets = io . of ( socketConfig . namespace ) ;
42
-
43
- io . set ( "heartbeat interval" , socketConfig . clients . heartbeatTimeout ) ;
44
-
45
- // Breaking change was introduced https://socket.io/blog/socket-io-2-4-0/
46
- io . origins ( ( _ , callback ) => {
47
- callback ( null , true ) ;
48
- } ) ;
51
+ io . connected = io . sockets
52
+ io . sockets = io . of ( socketConfig . namespace )
49
53
50
54
/**
51
55
* Listen for new connections
0 commit comments