const express = require('express') const app = express() const port = 3000 app.get('/', (req, res) => res.send('Hello World!')) app.listen(port, () => console.log(`Example app listening on port ${port}!`))
app.get('/', (req, res) => { res.send('GET request to the homepage') })
app.get('/books/:bookId', (req, res) => { res.send(req.params.bookId) })
app.post('/', function (req, res) { res.send('POST request to the homepage') })
app.get('/books/:bookId', (req, res) => { res.send(req.params.bookId) })
请求的协议 http 或 https
请求url地址
server.get('/detail', (req, res) => { res.send(req.query) })
server.get('/detail/:id', (req, res) => { res.send(req.params) })
获取请求信息,如主机
req.get('host')
argument: must be of type string or an instance of Buffer or Uint8Array
res.write(data) res.end()
res.send('hi,there.')
res.send('<h1>hi,there.</h1>')
res.send({ id: 10, name: 'gl' })
直接传输文件,不需要将文件从用户空间拷贝到内核空间,文件传输效率提高;减少内存拷贝,减少CPU消耗,提高系统性能
只能用于发送静态文件,不能传输其他类型的数据
只能传输2GB以下的文件
res.sendFile('./www/index.html', { root: __dirname })
res.json({ "errno": 0, "data": { "url": 'http://127.0.0.1:3000/upload/' + req.file.filename, } })
res.render('home/index', { navIndex: 0 })
设置 HTTP 响应的状态码。状态码是服务器返回给客户端的一个数字,用于表示请求的处理结果
成功的响应
res.status(200).json({ 'msg': 'ok' });
res.status(200).json({ 'code': 200, 'msg': 'Success', 'data': jsonData });
400 错误,并附带一个错误消息
res.status(400).json({ 'msg': 'Bad Request' });
res.status(400).json({ 'code': 400, 'msg': 'Invalid request parameters' });
//其它路由 server.use((req, res) => { res.status(404).sendFile('./www//lost.html', { root: __dirname }) })
//其它路由 server.use((req, res) => { res.status(404).sendFile('lost.html', { root: __dirname + '/www/' }) })