mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-28 05:12:25 +00:00
1cc0cbe8fc
web router has things like sessions etc added onto it. Api router is minimal, doesn't include things like csrf
21 lines
No EOL
572 B
CoffeeScript
21 lines
No EOL
572 B
CoffeeScript
settings = require "settings-sharelatex"
|
|
|
|
httpProxy = require('http-proxy');
|
|
proxy = httpProxy.createProxyServer({
|
|
target: settings.apis.realTime.url
|
|
})
|
|
wsProxy = httpProxy.createProxyServer({
|
|
target: settings.apis.realTime.url.replace("http://", "ws://")
|
|
ws: true
|
|
})
|
|
|
|
module.exports =
|
|
apply: (webRouter, apiRouter) ->
|
|
webRouter.all /\/socket\.io\/.*/, (req, res, next) ->
|
|
proxy.web req, res, next
|
|
|
|
setTimeout () ->
|
|
Server = require "../../infrastructure/Server"
|
|
Server.server.on "upgrade", (req, socket, head) ->
|
|
wsProxy.ws req, socket, head
|
|
, 0 |