node restAPI 简单例子
// 第一版,node的httpp // const http = require('http'); // const server=http.createServer((req,res)=>{ // if(req.url==='/'){ // res.write('hello world') // res.end(); // } // if(req.url==='/api/courses'){ // res.write(JSON.stringify([1,2,3])) // res.end(); // } // }) // server.listen(3000) // console.log('Listening on port 3000...') // 第二版,node http库 express const exp = require('constants'); const express=require('express') const app =express(); app.use(express.json()) const courses=[ {id:1,name:'course1'}, {id:2,name:'course2'}, {id:3,name:'course3'} ] app.get('/',(req,res)=>{ res.send('hello world') }) app.get('/api/courses',(req,res)=>{ res.send(courses) }) //Joi 库可以做验证 app.post('/api/courses',(req,res)=>{ if(!req.body.name || req.body.name.length<3){ //400 Bad Request res.status(400).send('Name is required and ....') } const course={ id:courses.length+1, name:req.body.name } courses.push(course) res.send(course) }) app.get('/api/courses/:id',(req,res)=>{ let course=courses.find(c=>c.id===parseInt(req.params.id)) if(!course)//404 res.status(404).send('the course with the give ID not found') res.send(course) }) // app.get('/api/posts/:year/:month',(req,res)=>{ // res.send(req.query)req.params, // }) const port=process.env.PORT||3000 app.listen(port,()=>{ console.log(`Listening on port ${port}...`) }) // app.post() // app.put() // app.delete()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现