You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
616 B
43 lines
616 B
4 years ago
|
'use strict'
|
||
|
|
||
|
const http = require('http')
|
||
|
|
||
|
const stringify = require('.')({
|
||
|
type: 'object',
|
||
|
properties: {
|
||
|
hello: {
|
||
|
type: 'string'
|
||
|
},
|
||
|
data: {
|
||
|
type: 'number'
|
||
|
},
|
||
|
nested: {
|
||
|
type: 'object',
|
||
|
properties: {
|
||
|
more: {
|
||
|
type: 'string'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
})
|
||
|
|
||
|
const server = http.createServer(handle)
|
||
|
|
||
|
function handle (req, res) {
|
||
|
const data = {
|
||
|
hello: 'world',
|
||
|
data: 42,
|
||
|
nested: {
|
||
|
more: 'data'
|
||
|
}
|
||
|
}
|
||
|
if (req.url === '/JSON') {
|
||
|
res.end(JSON.stringify(data))
|
||
|
} else {
|
||
|
res.end(stringify(data))
|
||
|
}
|
||
|
}
|
||
|
|
||
|
server.listen(3000)
|