Add visualserver.js

This commit is contained in:
x0x7 2025-02-13 20:14:25 -05:00
parent 18071296ff
commit 7657e685a2
1 changed files with 45 additions and 0 deletions

45
visualserver.js Normal file
View File

@ -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);
};