#!./uwsgi --https :8443,foobar.crt,foobar.key --http-modifier1 6 --http-raw-body --threads 100 --lua tests/websockets_echo.lua
function app(env)
local function html()
coroutine.yield(string.format([[
WebSocket
]], ws_scheme, env['HTTP_HOST']))
end
ws_scheme = 'ws'
if env['HTTPS'] ~= nil then
ws_scheme = 'wss'
end
if env['PATH_INFO'] == '/' then
return 200, { ["Content-type"] = "text/html" }, coroutine.wrap(html)
elseif env['PATH_INFO'] == '/foobar/' then
uwsgi.websocket_handshake(nil, nil, 'echo')
print("websockets...")
while 1 do
msg = uwsgi.websocket_recv()
uwsgi.websocket_send(string.format("[%s] %s", os.time(), msg))
end
end
end
return app