vue请求后端数据和跨域问题
最近遇到的一个问题 后端写好的接口,前端怎么获取数据
这是我后端的接口:GET 接口

这是我前端运行的项目地址:

简单使用:
咱门前端使用 颇受好评的 axios 来发起请求
这是它的官网:https://www.axios-http.cn/
不过要在vue中使用它,就需要先安装 打开终端 输入一下命令
npm install axios
然后在需要使用的 页面 <script> 中标签 引入 axios就行了
import axios from 'axios'
然后在methods中 创建一个函数:代码如下
a() {
// const axios = require('axios'); // 官方给出的例子 这段话类似于 import
axios.get('http://localhost:8088/user') // 这里填写后端的地址
.then(function (response) {
// 处理成功情况
console.log(response);
})
.catch(function (error) {
// 处理错误情况
console.log(error);
})
.then(function () {
// 总是会执行
});
}
require 和 import 具体详情,可以查阅相关资料
写完之后在 div中写一个 <button> 标签 <button @click="a()">点我 a</button>
打开控制台可以看到,data里面有三条数据


看到这里,我们就请求到了后端数据(后端一定要允许跨域请求)
改进
写完你这里例子之后,又写了几个请求,发现呢,每次都要复制黏贴,还有好多重复性代码,就想到,应该可以把这个axios封装一下
先去网上查找一些封装的案例,发现,,,,看不懂(并不难的鸭子)
然后自己手动 简单封装一下 axios
- 在src 目录下新建一个 utils 目录,然后再建一个 request.js 文件
- 在里面写一下代码
/*引入axios*/
import axios from 'axios' const request = axios.create({
baseURL: 'http://localhost:8088' // 接口服务器地址
}); // // 创建实例后修改默认值
// instance.defaults.headers.common['Authorization'] = AUTH_TOKEN; // //前端采用export.default,在写后端代码时用module.export
export default request - 在src中新建一个 api 目录, 在目录中新建有一个 demo.js ( 根据接口作用取名字,这里为测试demo )
- 写入以下代码
import request from '../utils/request' // 引入 request 类(模块) export function getList(params={}) {
return request({
methods:'GET',
url:'/user',
params,
})
} - 在url中,可以直接 用 / 和接口 地址拼接 然后设置methods 方式 ,axios 中默认为 get,getList是一个方法名
- 回到vue的页面上,在我们需要的vue中写
import { getList } from "../api/demo"导入这个方法 - 然后再methods中创建一个函数 ,重写这个方法
b(){
getList().then(function(response){
console.log(response);
}).catch(function(error){
console.log(error);
});
} - 最后这个方法可以用于点击事件,如果与crated中,就必须是使用回调函数
getList(){
listUser()
.then(response =>{ // 回调函数使用箭头函数来使用。(responde)=>{}
this.tableData = response.data;
})
},
如有问题,后续更新,先记录一下
vue请求后端数据和跨域问题的更多相关文章
- 解决Django+Vue前后端分离的跨域问题及关闭csrf验证
前后端分离难免要接触到跨域问题,跨域的相关知识请参:跨域问题,解决之道 在Django和Vue前后端分离的时候也会遇到跨域的问题,因为刚刚接触Django还不太了解,今天花了好长的时间,查阅了 ...
- Nginx+Springboot+Vue 前后端分离 解决跨域问题
1:前端vue 写完 打包 npm run build prod 2: 后端api 写完打包 springboot mvn package -Dmaven.test.skip=true 3: ngin ...
- 【笔记】总结Springboot和Vue前后端分离的跨域问题
跨域一直是个很玄学的问题,SSM的时候又得前后端一起配置,sb的时候又不用. 前端 axios普通get请求 submitForm() { var v=this; this.$axios({ meth ...
- Vue.js——基于$.ajax实现数据的跨域增删查改
概述 之前我们学习了Vue.js的一些基础知识,以及如何开发一个组件,然而那些示例的数据都是local的.在实际的应用中,几乎90%的数据是来源于服务端的,前端和服务端之间的数据交互一般是通过ajax ...
- Vue.js——基于$.ajax实现数据的跨域增删查改
转自:https://www.cnblogs.com/keepfool/p/5648674.html 概述 之前我们学习了Vue.js的一些基础知识,以及如何开发一个组件,然而那些示例的数据都是loc ...
- VUE系列三:实现跨域请求(fetch/axios/proxytable)
1. 在 config/index.js 配置文件中配置proxyTable 'use strict' // Template version: 1.3.1 // see http://vuejs-t ...
- 路飞前台全局css 全局配置文件,安装axios,安装vue-cookies,安装elementui,安装bootstrap和jq,后台主页模块表设计,后台主页模块轮播图接口,录入数据,跨域问题详解
目录 路飞前台全局css 全局配置文件,安装axios,安装vue-cookies,安装elementui,安装bootstrap和jq,后台主页模块表设计,后台主页模块轮播图接口,录入数据,跨域问题 ...
- javascript 跨域请求详细分析(终极跨域解决办法)
自从我接触前端以来,接手的项目里面很大部分都是前后端分离的,后端只提供接口,前端根据后端接口渲染出实际页面.个人觉得这是一个挺好的模式,前后端各自负责各自的模块,分工明确,而且也给前端更大的发挥空间. ...
- vue 请求后台数据2(copy)
https://blog.csdn.net/vergilgeekopen/article/details/68954940 需要引用vue-resource 安装请参考https://github.c ...
- 前后端分离之 跨域和JWT
书接上回:https://www.cnblogs.com/yangyuanhu/p/12081525.html 前后端分离案例 现在把自己当成是前端,要开发一个前后分离的简单页面,用于展示学生信息列表 ...
随机推荐
- Android笔记--对话框
提醒对话框AlertDialog 具体实现: 相关用法: 日期对话框DatePickerDialog DatePicker 具体实现: 使用Dialog选择日期: 时间对话框TimePickerDia ...
- MySQL Mock大量数据做查询响应测试
上个迭代版本发布后,生产环境业务同事反馈仓配订单查询的页面加载时间过长. 因为页面原来是有的,这次开发是在原来基础上改的,因此没有额外做性能.测试环境只调用接口请求了少量数据去验证功能.在对比该迭代添 ...
- PicList 现已上架Mac App Store 分享下整个上架过程和遇到的问题
PicList 是一款云存储/图床平台管理和文件上传工具,基于 PicGo 进行了深度二次开发,保留了 PicGo 的所有功能的同时,为相册添加了同步云端删除功能,同时增加了完整的云存储管理功能,包括 ...
- 2020 ccpc秦皇岛 赛后总结!!!!
amazing!!!! 金牌!!!!! 总结一下这次的发挥,以及如何冲到了金牌. 1 有队友单开了银牌题,50分钟过了K题,当时只有5个人过K.他敲的过程中另个队友想出来另外一题的思路,等过了K,我直 ...
- 纠删码在实时视频流中的应用丨Dev for Dev 专栏
本文为「Dev for Dev 专栏」系列内容,作者为声网网络体验团队王瑞. 01 背景 在实时音视频通话中,音视频质量受网络丢包影响较大,特别是对于视频. 为什么视频对丢包更敏感呢?通常来说,音频的 ...
- Midjourney AI绘画使用指南
上图有Midjourney生成,提示语为:24-year-old Chinese woman with long hair and a Tedd Midjourney是一款基于Prompt设计和CL ...
- 对比 elasticsearch 和 mysql
最近阅读了elasticsearch的官方文档,学习了它的很多特性,发现elasticsearch和mysql有很多地方类似,也有很多地方不同.这里做一个对比,帮助大家加深对elasticsearch ...
- Ubuntu桌面顶端没有网络图标
1 问题描述 刚装完新的linux系统后发现桌面顶部没有出现网络连接图标,网络无法进行连接配置. 2 解决方案 打开终端执行命令 nmcli network on或者sudo nmcli networ ...
- axios和后端交互时,参数需要写在body和query中同时写
axios.post('/api/xxx',{ // post body },{ params: { // query } }) demo: let params = { _id:this.alarm ...
- hta--Windows运行html的桌面应用程序(HTML应用程序)
HTA(HTML Application)-- HTML应用程序 作为前端开发,我们能熟练使用html实现各种效果,但是如果要实现一个简单的桌面应用程序那么应该怎么做呢,答案很简单,只需要把html文 ...