jsarchernet
v1.2.16
Published
network framework
Maintainers
Readme
jsarchernet
network framework. http(s) server and client, support openssl 1.3(gmssl)
install
npm install jsarchernet
examples
http client
const {http, HttpError} = require('jsarchernet')
const fs = require('fs')
let res = http.get("https://www.aliyun.com", null);
fs.appendFileSync('./tmp.html', res.body);
let res = http.request("https://www.zhihu.com",
{
method: "GET",
headers: {"User-Token": "17c858a9d7574fc78f6dc5b404a20d88"}
});
console.log(res.statusCode)
console.log(res.body.toString('utf-8'))http(s) server
const {http, HttpError} = require('jsarchernet')
http.createHttpServer({host:"127.0.0.1", posrt:9607,sslCtx:null} (req, res) => {
console.log(req.body.toString('utf-8'));
res.sendBody('{"nihao":"hello"}');
}, (err) => {
console.error(err);
})gmssl
const {SslContext, http, HttpError} = require('jsarchernet')
let sslCtx = new SslContext({
verifyPeer: true,
ca: fs.readFileSync('ca.crt'), //Buffer
crt: fs.readFileSync('sm2.crt'),
key: fs.readFileSync('sm2.key'),
enCrt: fs.readFileSync('encrypted_sm2.crt'),
enKey: fs.readFileSync('encrypted_sm2.key')
})
http.createHttpServer({host:"127.0.0.1", posrt:9607,sslCtx:sslCtx} (req, res) => {
console.log(req.body.toString('utf-8'));
res.sendBody('{"nihao":"hello"}');
}, (err) => {
console.error(err);
})