Nuxt.js - nuxt/axios(会持续完善)
创始人
2025-05-31 12:39:36
0

文章目录

  • nuxt2
    • 基础
    • 添加拦截器
    • 使用
  • nuxt3
    • 后续会更新

在这里插入图片描述

nuxt2

官方文档

基础

  • 下载,新建好项目,或者已经有的项目,我们可以通过yarn(或者npm)去添加该包
    yarn add @nuxtjs/axios
    
  • nuxt.config.js配置
    module.exports = {module:['@nuxtjs/axios'],  // 可以让我们全局使用 $axiosaxios:{ // 可以在这里做一些配置代理什么的},plugins: ['~/plugins/axios'],   //这个会对应咱们下面为axios写的插件
    }
    

添加拦截器

在这里我们需要用到 plugins 就是插件
/plugins/axios.js 我们需要创建一个这个文件,作为我们的插件去处理axios

export default function ({ $axios, redirect }) {$axios.onRequest(config => {console.log('Making request to ' + config.url)})$axios.onError(error => {const code = parseInt(error.response && error.response.status)if (code === 400) {redirect('/400')}})
}

在这里axios插件提供了一些插件

  • onRequest(config)

  • onResponse(response)

  • onError(err)

  • onRequestError(err)

  • onResponseError(err)

  • setBaseURL
    用来设置URL的地址

    if (process.client) {this.$axios.setBaseURL('http://api.example.com')
    }
    
  • setHeader
    用来设置请求头Header

    this.$axios.setHeader('Authorization', '456')
    
  • setToken
    用这个可以轻松设置全局身份验证表头

     this.$axios.setToken('123', 'Bearer')
    

使用

直接用即可,其他的事nuxtjs已经帮你做好了

async asyncData({ $axios }) {const ip = await $axios.$get('http://icanhazip.com')return { ip }
}

nuxt3

后续会更新

相关内容

热门资讯

“男子持刀入室盗窃”视频引发关... 近日,一段疑似“小偷”入室盗窃被业主家中监控拍下的视频在网上引发关注。11月21日晚,“翠屏公安”微...
绝不允许日本军国主义幽灵复活!... 2025年11月7日,日本首相高市早苗宣称,如果中国大陆对台湾出动军舰并使用武力,可能会构成“存亡危...
【解决】AI法律助手荣获202... 2025全球数字经济大会启幕,搭建国际数字合作高端平台 经国务院批准,由北京市人民政府、国家互联网信...
嘉兴男子与妻争吵,突然将行李箱... 近日,浙江嘉兴一对夫妻因琐事发生争吵,丈夫突然将装满衣物的行李箱从6楼扔到楼下,引发关注。11月22...
三地107家律所齐聚丰台,京津... 11月22日,京津冀律师驿站举办“党建业务深度融合 促进行业规范发展”主题活动,发布“百千万行动计划...
家装预付资金安全困局如何破解,... 家装预付资金安全困局如何破解 专家提出:建立“先验收后付款”装修资金存管制度 预交数万元甚至数十万元...
工行安康解放路支行积极开展《反... 为深入贯彻落实《国家金融监督管理总局安康监管分局办公室关于开展<反有组织犯罪法>宣传活动的通知》要求...
重庆公布育儿补贴制度实施方案 原标题:每孩每年3600元 重庆公布育儿补贴制度实施方案 11月21日,记者了解到,市卫生健康委、市...
十五运会组委会在深总结本届赛事... 深圳新闻网2025年11月22日讯(深圳报业集团记者 林炜航)11月21日,十五运会组委会在深圳市民...