第10讲:vue脚手架集成axios

news2024/11/24 5:22:29

一、创建项目并添加axios支持

创建项目请参考:使用脚手架创建vue项目
创建路由项目请参考:路由开发

1.1、添加axios支持

使用如下命令添加axios支持

npm install axios   //vue-cli2.0安装方式

1.2、在main.js中引用并使用axios

使用如下命令

import axios from 'axios'
Vue.prototype.$axios = axios

如图:
在这里插入图片描述

1.3、在vue文件中使用axios

//发送get请求
this.$axios.get('xxx').then(reuslt=>{}).catch(e=>{})
//发送post请求
this.$axios.post('xxx').then(reuslt=>{}).catch(e=>{})

//post 带参数请求
this.$axios({
    method:"post",
    url:"api/user/index",
    data:user  //封装个对象放这
    }) 
    .then(response=>{
   		console.log(response)
    })

二、axios案例:用户登录

2.1、案例效果

在这里插入图片描述

2.2、需求分析

1、在vue中使用axios发送post请求到后端项目
2、接收后端项目响应的json数据,并在cnosole中输出响应的数据

2.3、需求实现

第1步:使用创建项目后,使用npm命令安装axios

npm install axios   //vue-cli2.0安装方式

第2步:导入并使用axios

在main.js文件中导入并使用axios

import axios from 'axios'
Vue.prototype.$axios = axios

第3步:开发后台项目

本案例使用SpringBoot创建,完整代码在最后

@PostMapping("/login")
public String login(@RequestBody User user){
	return user.getUserName()+",欢迎使用xxx系统";
}

第4步:创建login.vue文件

页面模板

<template>
    <div>
        <h1>用户登录</h1>
        账号:<input type="text" v-model="user.userName"/><br/>
        密码:<input type="password" v-model="user.passwd"/><br/>
        <button @click="doLogin">登录</button>
    </div>
</template>

js业务代码,使用axios发送请求到后台项目

<script>
export default{
    name: 'login',
    data(){
        return{
            user: {
                userName: null,
                passwd: null
            }
        }
    },
    methods: {
        doLogin(){
            //二级路由跳转:/一级路径/二级路径
            // this.$router.push("/studentManager/studentList");
            //注意$axios是跟main.js自己取的属性名一样
            this.$axios.post('/api/login', this.user).then(response => {
                console.log(response.data);
            });
        }
    }
}
</script>

第5步:解决跨域拦截问题

在vue.config.js配置文件中设置代理转发
在这里插入图片描述

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  devServer: {
    port: 8888,
    //设置代理服务器,将/api开头的请求都由代理服务器转发
    proxy: {
      "/api": { // 1、配置代理规则
        target: 'http://127.0.0.1:8080',   // 2、所代理的服务器地址,也就是要转发的服务器地址,将/api替换成了该地址
        changeOrigin: true, // 3、跨域开关,true=开启
        pathRewrite: {
          '^/api': '/' // 4、去掉url中的/api字符串
        }
      }
    }
  }
})

Tip:为什么要使用代理服务器转发请求?
前端的 ajax 请求并不是直接发给后台服务器,而是发给了代理服务器,再由代理服务器转发给后台服务器;返回数据的时候,同样也是由代理服务器接收到后台服务器的返回,然后代理服务器再将返回结果转发给前端。
提示:之所以能通过代理服务器解决跨域问题是因为代理服务器(http-proxy-middleware)它不是浏览器,它没有同源安全检测。

第5步:运行程序进行测试

启动后端项目
使用如下命令启动前端vue项目

npm run serve

项目启动之后,浏览器访问http://localhost:8888/即可得到效果

三、完整代码

Vue脚手架安装axios及解决跨源访问问题.zip

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/91383.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

git初识(三)

分支 顾名思义&#xff0c;分支就是从主线上分离出来进行另外的操作&#xff0c;而又不影响主线&#xff0c;主线又可以继续干它的事&#xff0c;&#xff0c;最后分支做完事后合并到主线上而分支的任务完成可以删掉了。为了不受其他开发人员的影响&#xff0c;你可以在主分支…

数据看板可视化

前言 这段时间一直在做可视化&#xff0c;在我的项目中有一部分是电力巡检的数据可视化。其中的数据看板比较简单&#xff0c;我将其单独抽离出来形成一个demo&#xff0c;为保密demo中数据非真实数据。先看效果。 具体效果 链接相关 浏览链接&#xff1a;http://xisite.top…

【人工智能与机器学习】——聚类(学习笔记)

&#x1f4d6; 前言&#xff1a;我们之前学习的算法均是有监督学习&#xff08;supervised learning&#xff09;&#xff0c;它的一个鲜明特征是通过给定的标签来学习从数据特征&#xff08;如图像&#xff09;到语义标签的映射关系。但在很多实际问题中&#xff0c;数据并没有…

vuex笔记

Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。 调试工具&#xff1a;vue devtools Vuex就像眼镜&#xff1a;您自会知道什么时候需要它。 1、state 在store中定义数据&#xff0c;在组件中直接使用&#xff1a; 目录&#xff1a;store/index.js export defau…

相关分析与回归分析

相关与回归分析就是了解变量之间相关关系的统计方法 一.相关分析 具有相关关系的变量之间&#xff0c;如果不区分原因和结果&#xff0c;我们称之为相关分析 相关分析是看两个因素之间的相关性&#xff0c;不需要确定哪个是自变量&#xff0c;哪个是因变量&#xff0c;两个因…

RK3568 GT911触摸屏调试

屏幕规格书 需要主要硬件通信电压为&#xff1a;1.8V或者3.3V I2C通信的地址&#xff1a;0x5D 和0x40 系统上电时序&#xff1a;不同的地址&#xff0c;稍微有些差异 对应代码中如下&#xff1a; 与RK3568的硬件接口电路 DTS 配置 驱动&#xff1a;RK自带的驱动程序就可以正确工…

音视频学习 -- 弱网对抗技术相关实践

背景介绍 实时音视频通话在当前的生活中是无时不刻存在的&#xff0c;包括社交、安防、交通等等各个方面都需要。用户场景复杂多变、要求严苛、网络环境不一致等给实时音视频通话带来很大条件。我们在这方向稍微做了一些工作&#xff0c;虽然和其他大厂的优化工作相比&#xf…

Commons Collections3

省流 SerialKiller 可以通过⿊名单与⽩名单的⽅式来限制反序列化时允许通过的 类&#xff0c;其中限制了cc1和cc2中命令执行的类&#xff0c;InvokerTransformer cc3就是为了绕过对其的限制&#xff0c;这里使用的是com.sun.org.apache.xalan.internal.xsltc.trax.TrAXFilter来…

基于改进的DBN降水预测方法(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 精确高效的降水预测模型可以更好地反映未来的气候&#xff0c;为管理决策提供重要参考&#xff0c;帮助人们为未来的恶劣天气做…

首个元宇宙国家?!# Tuvalu

当我们还在谈论如何设计和构建一个未来城市的时候&#xff0c;首个入驻元宇宙的国家也诞生了。太平洋岛国「图瓦卢」开始 在虚拟世界创建一个数字国家。这是个怎样的国家&#xff1f;图瓦卢是位于南太平洋的一个岛国&#xff0c;人口约为 1.2 万&#xff0c;由 9 个环形小珊瑚岛…

FKM规范静强度和疲劳强度计算分析

1. 概述 WB-FKM/WB-FKM-Weld工具包是德国CADFEM公司基于FKM规范&#xff08;德国机械协会主持和通过的机械产品强度评估规范&#xff09;的基础上&#xff0c;在ANSYS WB内开发的针对结构母材及焊缝进行静强度和疲劳强度评估的工具包。 该工具包的最大优势是&#xff1a;基于AN…

艾美捷CpG ODN系列——ODN 2006 (TLRGRADE)说明

艾美捷CpG ODN系列——ODN 2006 (TLRGRADE)&#xff1a;具有硫代磷酸酯骨架的CpG寡脱氧核苷酸&#xff08;B型&#xff09;。人和小鼠TLR9&#xff08;Toll样受体9&#xff09;的特异性配体。 艾美捷CpG ODN 丨ODN 2006 (TLRGRADE)化学性质&#xff1a; 序列&#xff1a;5-tcg…

减少win11核显占用的内存怎么操作

减少win11核显占用的内存如何操作是很多小伙伴反应的问题&#xff0c;当我们的电脑新安装完win11的时候会发现系统的内存占用比较高&#xff0c;但是自己却没有开任何的占用高的软件&#xff0c;下面小编给大家分享一下减少win11核显占用的内存操作方法吧&#xff0c;以便解决大…

音视频编解码 -- 编码参数 CRF

之前多多少少接触过一些编解码参数&#xff0c;CRF 参数也用过&#xff0c;但是最近在和朋友们聊天时&#xff0c;说到使用 FFMPEG 过程中碰到 CRF 参数&#xff0c;以及具体作用流程&#xff0c;这个之前一直没有跟踪过&#xff0c;也没有详细记录过&#xff0c;所以吊起了自己…

【笔记】计算机组成原理复习重点——篇四

计算机组成原理复习重点笔记 第&#xff14;章 存 储 器 4.1 概述 存储一个二进制位的物理器件叫存储元。地址码相同的多个存储元构成一个存储单元。若干个存储单元构成存储体。多个存储体构成存储器。多个存储器构成存储体系。存储元→存储单元→存储体→存储器→存储体系 4…

pytorch实现运动鞋分类

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f366; 参考文章地址&#xff1a; 365天深度学习训练营-第P5周&#xff1a;运动鞋分类&#x1f356; 作者&#xff1a;K同学啊一、前期准备 1. 设置GPU import torch from torch import nn imp…

Spring Batch 批处理-作业监听器

引言 接着上篇&#xff1a;Spring Batch 批处理-作业增量参数&#xff0c;了解作业参数增量器后&#xff0c;本篇就来了解一下Spirng Batch 作业监听器&#xff0c;看能玩出啥花样。 作业监听器 Spring Batch 步骤/作业的设计延续Spring传统设计模式&#xff0c;加入生命周期…

「Electron|快速开始」来写个Hello World桌面应用吧

本文主要介绍如何快速使用Electron生成一个Hello World应用 文章目录主要步骤一、准备工作创建项目安装electron二、编写electron应用所需的基本内容首先&#xff0c;我们需要给electron应用一个入口创建窗口往窗口里面放一个HTML界面&#xff0c;写上"Hello World!"…

计算机网络技术-常见网络命令

文档下载&#xff1a;https://download.csdn.net/download/weixin_57836618/87294136 实验2 常见网络命令 1. 实验目的与意义 ① 通过实验熟悉与网络相关的组件的含义和用途。 ② 了解系统网络命令的含义、用途和操作方法。 ③ 能够查看网络的状态&#xff0c;对网络进行简…

DEiT实战:使用DEiT实现图像分类任务(一)

DEiT实战摘要安装包安装timm数据增强Cutout和MixupEMA项目结构计算mean和std生成数据集摘要 DEiT是FaceBook在2020年提出的一篇Transformer模型。该模型解决了Transformer难以训练的问题&#xff0c;三天内使用4块GPU&#xff0c;完成了ImageNet的训练&#xff0c;并且没有使用…