axios基本使用,express中间件

简介: axios基本使用,express中间件

axios基本使用

axios常用属性

  • url:用于请求的服务器url
url:'/url'

method: 创建时使用的方法

//默认为get
method:'get'
  • transformRequest: 允许在请求数据发送到服务器之前对其进行更改
transformRequest:[function(data){
  //做任何想要的数据转化
  //然后返回  return data
}]

params: 是即将与请求一起发送的url参数;必须是纯对象或 URLSearchParams对象,请求参数拼接在URL上。

params:{
  ID:1234565
}

data: 作为请求主体发送的数据

//仅适用于 请求方法“get” "post" "patch
data: {
  firstName: ’zxzx’
}

axios请求

Get请求

后端发送的json数据,显示到浏览器上

axios.get('/login',{
  params: {
    pageNum:2,
    pageSize:3
  }
})
  .then(function (response){
    console.log(response)
  })
  .catch(function (error){
    console.log(error)
  })

Post请求

使用post请求传递对象数据

axios.post('http://127.0.0.1:3000/user',{
  username:123,
  password:2345
})
  .then(function (response){
    console.log(response)
  })
  .catch(function (error){
    console.log(error)
  })
axios({
  method:'post',
  url:'/user',
  data: {
    firstname: 'welcome',
    lastname:'coming'
  }
})
//获取远端图片
axios({
  method:'post',
  url:'http://127.0.0.1:3567',
  responseType:'stream'
})
//responseType`表示服务器响应的数据类型,可以是 ‘arraybuffer’, ‘blob’, ‘document’, ‘json’, ‘text’, ‘stream’
.then(function(response) {
  response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))
});

express中间件

内置中间件

// 托管静态文件

//4.内置中间件

app.use(express.static(‘static’))//访问static目录下的文件 127.0.0.1:3000/css/base.css

  • 应用级中间件(用于权限判断)

app.use((req,res,next)=>{

console.log(newDate());

next()//表示匹配完成这个中间件后程序继续向后执行

})

路由级中间件 (少见)

app.get(‘/article/add’,(req,res,next)=>{
console.log(‘执行郑家新闻’);
next()
})
app.get(‘/article/:id’,(req,res)=>{ //主要用于修改数据
var id = req.params[“id”]
res.send(“动态路由”**+**id)
// //http://127.0.0.1:3000/article/xxx
})

错误形中间件

// 放在最后

app.use((req,res,next)=>{

res.status(404).send(“404”)// 匹配所有网址未找到定义的网址时 匹配到报错

})

第三方中间件

const bodyParser = require('body-parser')
//配置第三方中间件  接受post表单
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())

session中间件

//配置session中间件
app.use(session({
    secret: 'this is session',//服务端生成session时的签名
    name:'xxx',//设置cookie名称
    resave: false,//强制保存  session 即使没用变化
    saveUninitialized: true,//强制将未初始化的session存储
    //可以来设置cookie   session是基于cookie
    cookie: { 
        maxAge:1000*60,
        secure: false,//true表示只有https协议才能访问cookie
     },
     rolling:true, //在每次请求时强行设置cookie ,重置cookie过期时间  默认false
     store:MongoStore.create({
        mongoUrl: 'mongodb://admin:admin888@127.0.0.1:27017/admin',
        touchAfter:24*3600//不管发出了多少请求, 在24小时内只更新一次session  除非改变session
      })
  }))
app.get('/',(req,res)=>{
    //获取session
    if(req.session.username){
        res.send(req.session.username+'登录')
    }else{
        res.send('没有登陆')
    }
})
app.get("/login",(req,res)=>{
    //设置session
    req.session.username="hk"
    res.send("首页")
})
app.get("/loginOut",(req,res)=>{
    //1. 设置session 的过期时间 为0 (他会把所有的session都销毁)
    // req.session.cookie.maxAge=0
    //2.销毁指定session
    // req.session.username=""
    //3.销毁session destroy
    req.session.destroy()
    res.send("退出登录")
})


相关文章
|
JSON JavaScript 中间件
node.js中Express框架路由,中间件
node.js中Express框架路由,中间件
|
1月前
|
JavaScript 前端开发
vue配合axios连接express搭建的node服务器接口_简单案例
文章介绍了如何使用Express框架搭建一个简单的Node服务器,并使用Vue结合Axios进行前端开发和接口调用,同时讨论了开发过程中遇到的跨域问题及其解决方案。
34 0
vue配合axios连接express搭建的node服务器接口_简单案例
|
5月前
|
存储 缓存 JSON
玩转Express(二)登录态&中间件
玩转Express(二)登录态&中间件
|
4月前
|
JavaScript
|
中间件
93 # 实现 express 错误处理中间件
93 # 实现 express 错误处理中间件
54 0
|
5月前
|
开发框架 JavaScript 中间件
深入探索Node.js的Express框架:使用与中间件详解
【4月更文挑战第30天】本文深入探讨了Node.js的Express框架,介绍了其作为Web开发的强大工具,主要聚焦于基本使用和中间件。Express是基于Node.js的Web应用框架,用于构建高效的应用和API。文章详细讲解了如何安装Express,创建简单应用,以及中间件的工作原理和应用,包括中间件的顺序、错误处理和挂载位置。此外,还提到了使用第三方中间件扩展功能。理解Express基础和中间件对于开发高质量Web应用至关重要。
|
5月前
|
Web App开发 JavaScript 前端开发
Express 框架的特点、使用方法以及相关的常用功能和中间件
Express 框架的特点、使用方法以及相关的常用功能和中间件
313 1
|
5月前
|
JSON JavaScript 前端开发
axios基本使用
axios基本使用
46 0
|
5月前
|
JavaScript 前端开发 中间件
Node.js—Express使用、Express 路由 、Express 中间件、托管静态资源、使用 Express 写接口、node.js链接sqlite数据库
Node.js—Express使用、Express 路由 、Express 中间件、托管静态资源、使用 Express 写接口、node.js链接sqlite数据库
214 0
|
中间件
92 # express 中的中间件的实现
92 # express 中的中间件的实现
37 0