【Vue】2-8、Axios 网络请求

javascript 复制代码
cdn:<script src="https://unpkg.com/axios/dist/axios.min.js"></script> 

注:使用 CDN 链接就可以不需要去下载对应的 js 文件到本地,只需要联网即可使用,可以减少项目的体积

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Axios</title>
</head>
<body>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script>
        const result = axios({
            method: 'GET',
            url: 'http://www.liulongbin.top:3006/api/getbooks'
        })then(function(books){
            console.log(books)
        })
    </script>
</body>
</html>
html 复制代码
<body>
    <button id="btnGet">get</button>
    <button id="btnPost">post</button>
    
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script>
        document.querySelector('#btnGet').addEventListener('click',async function(){
            const { data:res} = await axios.get('http://www.liulongbin.top:3006/api/getbooks',{
                params: {
                    id: 1
                }
            })
            console.log(res)
        })

        document.querySelector('#btnPost').addEventListener('click',async function(){
           const { data:res} = await axios.post('http://www.liulongbin.top:3006/api/post',{
               name: 'zs',
               gender: '女'
           })
           console.log(res)
        })
    </script>
</body>
javascript 复制代码
import axios from 'axios'

// Vue.prototype.axios = axios
Vue.prototype.$http = axios

如果每次使用都要导入一次,那就太麻烦了,也降低了可维护性

可以在 main.js 文件中导入 axios ,这样就不需要在每个组件中都重新导入了

javascript 复制代码
methods: {
 async postInfo() {
   const { data: res } = await this.$http.post('http://www.liulongbin.top:3006/api/post', { name: 'zs', age: 20 })
   console.log(res)
 }
}
javascript 复制代码
// 全局配置 axios 的请求跟路径
axios.defaults.baseURL = 'http://www.liulongbin.top:3006'

缺点:不利于 API 的复用!

一 叶 知 秋,奥 妙 玄 心

相关推荐
珠海西格电力科技33 分钟前
微电网控制策略基础:集中式、分布式与混合式控制逻辑
网络·人工智能·分布式·物联网·智慧城市·能源
学嵌入式的小杨同学8 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
syseptember8 小时前
Linux网络基础
linux·网络·arm开发
weixin_425543738 小时前
TRAE CN3.3.25 构建的Electron简易DEMO应用
前端·typescript·electron·vite·nestjs
Mr Xu_9 小时前
【Vue3 + ECharts 实战】正确使用 showLoading、resize 与 dispose 避免内存泄漏
前端·信息可视化·vue·echarts
0思必得09 小时前
[Web自动化] Selenium设置相关执行文件路径
前端·爬虫·python·selenium·自动化
雯0609~10 小时前
hiprint:实现项目部署与打印1-官网提供普通html版本
前端·html
不绝19110 小时前
UGUI——进阶篇
前端
~牧马~10 小时前
【记录63】electron打包vue项目之踩坑
vue.js·electron·electron与node兼容
Exquisite.10 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql