Skip to content

Commit b814813

Browse files
save file
1 parent 6ac3c56 commit b814813

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
2+
3+
4+
var https = require('https');
5+
var fs = require('fs');
6+
7+
var key = fs.readFileSync('key.pem');
8+
var cert = fs.readFileSync('cert.pem');
9+
var server = https.createServer({key,cert},onrequest).listen(81);
10+
console.log(`listening 127.0.0.1:81`);
11+
server.on('secureConnection',socket=>{
12+
console.log('*** connection ***');
13+
socket.req = '';
14+
socket.res = '';
15+
16+
socket.on('data',data=>{
17+
18+
socket.req += data.toString();
19+
20+
});
21+
22+
var write = socket.write;
23+
socket.write = function(data,encoding,callback){
24+
25+
socket.res += data.toString();
26+
write.apply(socket,arguments);
27+
28+
}//write
29+
30+
});
31+
32+
33+
function onrequest(req,res){
34+
console.log(req.method,req.url);
35+
res.on('finish',()=>{
36+
37+
console.log('--- request ---');
38+
console.log('['+req.socket.req+']');
39+
console.log();
40+
console.log('--- response ---');
41+
console.log('['+req.socket.res+']');
42+
43+
});
44+
console.log(JSON.stringify(req.headers,null,4));
45+
var body = '';
46+
req.on('data',data=>body+=data);
47+
48+
req.on('end',()=>{
49+
50+
if(req.url!='/'){
51+
res.writeHead(404).end('not fouund');
52+
return;
53+
}
54+
55+
var csp = `default-src 'self';connect-src 'self';script-src 'self' 'unsafe-inline';`;
56+
res.writeHead(200,{'content-type':'text/html','content-security-policy':csp});
57+
res.end(html)
58+
59+
});
60+
61+
}//onresquest
62+
63+
64+
var html = `
65+
<h3>it works!</h3>
66+
<script>
67+
console.clear();
68+
fetch('/').then(res=>res.headers.forEach((value,key)=>console.log(key,value)));
69+
</script>
70+
`;

0 commit comments

Comments
 (0)