vue之axios基本使用

文章目录

  • [1. axios 网络请求库](#1. axios 网络请求库)
  • [2. axios+vue](#2. axios+vue)

1. axios 网络请求库



html 复制代码
<body>
<input type="button" value="get请求" class="get">
<input type="button" value="post请求" class="post">
<!-- 官网提供的 axios 在线地址 -->
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script>
    /*
        接口1:随机笑话
        请求地址:https://autumnfish.cn/api/joke/list
        请求方法:get
        请求参数:num(笑话条数,数字)
        响应内容:随机笑话
    */
    document.querySelector(".get").onclick = function () {
        axios.get("https://autumnfish.cn/api/joke/list?num=3")
            //测试错误触发事件
            // axios.get("https://autumnfish.cn/api/joke/list1234?num=6")
            .then(function (response) {
                console.log(response);
            },function(err){
                console.log(err);
            })
    }
    /*
         接口2:用户注册
         请求地址:https://autumnfish.cn/api/user/reg
         请求方法:post
         请求参数:username(用户名,字符串)
         响应内容:注册成功或失败
     */
    document.querySelector(".post").onclick = function () {
        axios.post("https://autumnfish.cn/api/user/reg",{username:"雲兮动人"})
            .then(function(response){
                console.log(response);
            },function (err) {
                console.log(err);
            })
    }

</script>
</body>
  • get请求结果,获取到三条笑话结果
  • get请求,指定不存在的接口,返回错误信息
  • post请求,指定 username
  • 再次注册时,发现已经存在同名,不能注册了
  • 把post请求地址api改成不存在的,结果返回错误,跟get请求的回调函数一样返回错误的信息
  • 在控制台的Network 下查看是不是基于Ajax ,点击get、post请求,查看

2. axios+vue




  • 案例:获取笑话
html 复制代码
<body>
<div id="app">
    <input type="button" value="获取笑话" @click="getJoke">
    <p> {{ joke }}</p>
</div>
<!-- 官网提供的 axios 在线地址 -->
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
    /*
        接口:随机获取一条笑话
        请求地址:https://autumnfish.cn/api/joke
        请求方法:get
        请求参数:无
        响应内容:随机笑话
    */
    var app = new Vue({
        el:"#app",
        data:{
            joke:"很好笑的笑话"
        },
        methods: {
            getJoke:function(){
                // console.log(this.joke);
                var that = this;
                axios.get("https://autumnfish.cn/api/joke").then(function(response){
                    //console.log(response)
                     console.log(response.data);
                    // console.log(this.joke);
                    that.joke = response.data;
                },function (err) {  })
            }
        },
    })
</script>
</body>
  • 点击按钮后,就会改变一次获取到笑话的内容

相关推荐
哎呦你好16 分钟前
【CSS】Grid 布局基础知识及实例展示
开发语言·前端·css·css3
盛夏绽放25 分钟前
接口验证机制在Token认证中的关键作用与优化实践
前端·node.js·有问必答
zhangxingchao41 分钟前
Jetpack Compose 之 Modifier(中)
前端
JarvanMo42 分钟前
理解 Flutter 中 GoRouter 的context.push与context.go
前端
pe7er1 小时前
使用 Vue 官方脚手架创建项目时遇到 Node 18 报错问题的排查与解决
前端·javascript·vue.js
星始流年1 小时前
前端视角下认识AI Agent
前端·agent·ai编程
pe7er1 小时前
使用 types / typings 实现全局 TypeScript 类型定义,无需 import/export
前端·javascript·vue.js
CH_Qing1 小时前
【udev】关于/dev 设备节点的生成 &udev
linux·前端·网络
小诸葛的博客1 小时前
gin如何返回html
前端·html·gin
islandzzzz1 小时前
(第二篇)HMTL+CSS+JS-新手小白循序渐进案例入门
前端·javascript·css·html