const http = require('http'); const port = 8889; const database = {}; const requestHandler = (request, response) => { response.setHeader('Content-Type', 'application/json'); if (request.method === 'POST') { let body = ''; request.on('data', (chunk) => { body += chunk.toString(); // convert Buffer to string }); request.on('end', () => { const { key, data } = JSON.parse(body); database[key] = data; response.setHeader('Access-Control-Allow-Headers', '*'); response.end('ok'); }); } else if (request.method === 'GET') { const key = new URL(request.url, 'https://example.org/').searchParams.get( 'key', ); response.setHeader('Access-Control-Allow-Headers', '*'); response.end(JSON.stringify(database[key] || '')); } else { response.end('unknown request'); } }; const server = http.createServer(requestHandler); server.listen(port, (err) => { if (err) { console.log('mock 3box server error: ', err); } });