INNER CODE UNIT · JavaScript

handle

wangshengithub/staticshield · src/server.js:97

  return async function handle(req, res) {
    try {
      var url = (req.url || '/').split('?')[0];
      if (ctx && ctx.port) {
        var host = String(req.headers.host || ''), p = ctx.port;
        if (host !== '127.0.0.1:' + p && host !== 'localhost:' + p && host !== '[::1]:' + p) return sendJson(res, 403, { ok: false, error: 'Forbidden' });
      }
      if (req.method === 'GET' && (url === '/' || url === '/index.html')) {
        if (!guiHtml) return sendJson(res, 503, { ok: false, error: 'GUI 未生成,请先运行 node src/build-gui.js' });
        return sendHtml(res, 200, guiHtml);
      }
      if (req.method === 'GET' && url === '/api/health') return sendJson(res, 200, { ok: true });
      if (req.method === 'POST' && url === '/api/encrypt') {
        var ct = String(req.headers['content-type'] || '');
        if (ct.indexOf('application/json') < 0) return sendJson(res, 415, { ok: false, error: '需使用 application/json' });
        var body = await readJson(req, MAX_BODY);
        var result = await doEncrypt(body);
        return sendJson(res, 200, result);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…