Add visualserver.js
This commit is contained in:
parent
18071296ff
commit
7657e685a2
|
@ -0,0 +1,45 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
var Router = require('UrlResolver');
|
||||||
|
var router = new Router();
|
||||||
|
var wsrouter = new Router();
|
||||||
|
var http=require('http');
|
||||||
|
var genpug = require('./genpug');
|
||||||
|
var ws = require('ws');
|
||||||
|
var clientws = null;
|
||||||
|
var helper = require('./helper');
|
||||||
|
|
||||||
|
function timeout(ms) {
|
||||||
|
return new Promise(r=>
|
||||||
|
|
||||||
|
|
||||||
|
var server = http.createServer((req,res)=>{
|
||||||
|
req.urlp = new URL('https://example.com'+req.url);
|
||||||
|
router.get(req.urlp.pathname)(req,res);
|
||||||
|
});
|
||||||
|
server.listen(8080);
|
||||||
|
|
||||||
|
router.add('/',genpug('front.pug'));
|
||||||
|
|
||||||
|
router.add('/startcrawl',async (req,res)=>{
|
||||||
|
var url = req.url.substr('/startcrawl/'.length);
|
||||||
|
var downloaded=[]
|
||||||
|
var todownload=[];
|
||||||
|
helper(url,'out',downloaded,todownload);
|
||||||
|
res.end();
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
wsrouter.add('/',(req,socket,head)=>{
|
||||||
|
wss.handleUpgrade(req,socket,head,ws=>{
|
||||||
|
clientws = ws;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
var wss = new WebSocket.Server({noServer:true});
|
||||||
|
server.upgrade = (req,socket,head)=>{
|
||||||
|
req.urlp = new URL('https://example.com'+req.url);
|
||||||
|
wsrounter.get(req.urlp.pathname)(req,socket,head);
|
||||||
|
};
|
Loading…
Reference in New Issue