@amanooo/fetch
Version:
custom fetch
53 lines (46 loc) • 1.46 kB
JavaScript
async function startServer () {
var express = require('express')
var bodyParser = require('body-parser')
var cookieParser = require('cookie-parser');
var auth = require('basic-auth')
var app = express()
app.use(bodyParser.json())
app.use(cookieParser());
app.get('/', function (req, res) {
res.json({ get: 1 })
})
app.get('/cookie', function (req, res) {
const { cookies } = req
const obj = cookieParser.JSONCookies(cookies)
console.log('Cookies: ', cookies)
console.log('obj: ', obj)
res.json({ cookies })
})
app.post('/', function (req, res) {
res.json({ post: 1 })
})
app.post('/auth', function (req, res) {
var user = auth(req)
const { method, path, headers } = req
console.log('user', user);
if (user && user.name === 'a' && user.pass === 'b') {
res.json(user)
} else {
res.statusCode = 401
res.setHeader('WWW-Authenticate', 'Basic realm="test"')
res.end('Unauthorized')
}
})
app.post('/random', function (req, res) {
const random = Math.round(Math.random() * 10)
console.log('random', random);
if (random > 5) {
res.json({ random })
} else {
res.statusCode = 500
res.send('Internal Error1 with random ' + random)
}
})
app.listen(8000)
}
startServer()