文件名:index.js
打开cmd 在当前目录输入nodemon index.js启动3000端口
接口调用async/await
接口调用fetch
接口调用axios
const express=require('express');
const app=express();
const bodyParser=require('body-parser');
//处理静态资源
app.use(express.static('public'));
//处理参数
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:false}));
//设置允许跨域访问该服务
app.all('*',function(req,res,next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Methods", "PUT,GET,POST,DELETE,OPTIONS");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header("Access-Control-Allow-Headers", "Content-Type");
res.header("Access-Control-Allow-Headers", "mytoken");
next();
});
//路由
app.get('/data',(req,res)=>{
res.send('hello world')
});
app.get('/data1', (req, res) => {
setTimeout(function(){
res.send('Hello TOM!')
},1000);
});
app.get('/data2', (req, res) => {
res.send('Hello JERRY!')
});
app.get('/fdata',(req,res)=>{
res.send('hello fetch')
});
app.get('/books',(req,res)=>{
res.send('传统的url传递参数'+req.query.id)
});
app.get('/books/:id',(req,res)=>{
res.send('Restful形式的url传递参数'+req.params.id)
});
app.delete('/books/:id',(req,res)=>{
res.send('delete请求的url传递参数'+req.params.id)
});
app.post('/books',(req,res)=>{
res.send('post请求的url传递参数'+req.body.uname+"---"+req.body.age)
});
app.get('/json',(req,res)=>{
res.json({
uname:'明',
age:18
})
});
app.get('/adata',(req,res)=>{
res.send('hello axios')
});
app.get('/async1', (req, res) => {
res.send('hello')
});
app.get('/async2', (req, res) => {
if(req.query.info == 'hello') {
res.send('world')
}else{
res.send('error')
}
});
//启动监听 打开cmd 在当前目录输入nodemon index.js启动3000端口
app.listen(3000,()=>{
console.log("running...")
});