2015-03-09 14:09:09 +00:00
|
|
|
settings = require "settings-sharelatex"
|
|
|
|
|
|
|
|
httpProxy = require('http-proxy');
|
|
|
|
proxy = httpProxy.createProxyServer({
|
|
|
|
target: settings.apis.realTime.url
|
2015-03-20 19:08:35 +00:00
|
|
|
})
|
|
|
|
wsProxy = httpProxy.createProxyServer({
|
|
|
|
target: settings.apis.realTime.url.replace("http://", "ws://")
|
2015-03-09 14:09:09 +00:00
|
|
|
ws: true
|
|
|
|
})
|
|
|
|
|
|
|
|
module.exports =
|
2015-06-30 13:38:32 +00:00
|
|
|
apply: (webRouter, apiRouter) ->
|
|
|
|
webRouter.all /\/socket\.io\/.*/, (req, res, next) ->
|
2015-03-20 19:08:35 +00:00
|
|
|
proxy.web req, res, next
|
|
|
|
|
|
|
|
setTimeout () ->
|
|
|
|
Server = require "../../infrastructure/Server"
|
|
|
|
Server.server.on "upgrade", (req, socket, head) ->
|
|
|
|
wsProxy.ws req, socket, head
|
|
|
|
, 0
|