UNPKG

whistle

Version:

HTTP, HTTP2, HTTPS, Websocket debugging proxy

23 lines (19 loc) 575 B
var ca = require('../../../lib/https/ca'); var URL_RE = /^(?:(?:[\w.-]+:)?\/\/)?([\w.-]+)/i; function parseDomain(domain) { domain = domain && typeof domain === 'string' && domain.trim(); if (!domain || domain.length > 64 || !URL_RE.test(domain)) { return; } return RegExp.$1; } module.exports = function(req, res) { var domain = parseDomain(req.query.domain); if (!domain) { return res.status(400).end('Bad Request'); } if (domain === 'rootCA') { return res.json(ca.getRootCA()); } res.json(ca.createCertificate(domain.toLowerCase())); };