Vue-cli简单的使用axios和开发环境下跨域

Vue.js解决开发生产环境跨域 Vue.js解决开发生产环境跨域 当解决了这个问题的时候,心里真的太爽了,超级超级超级高兴!!! 文章目录Vue.js解决开发生产环境跨域跨域问题本方法需要满足以下几个条件具体步骤(这里照搬思否)1.开发环境设置跨域2.生产环境设置跨域思路动手操作总结参考资料 跨域问题 当我们要和其他人对接接口的时候,对方可能不会对jsonp的请求做修改,因此传统的跨域方法没有用!这个时候我们就需要自己来解决这些... 阅读详情

官方说法:Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中
这里是英文文档和在kancloud上发现的中文文档

在vue项目下进行安装(这里用的是vue-cli创建的项目简单的使用示例)

$ npm i axios

进入src/main.js引入axios

import axios from 'axios'
Vue.prototype.axios = axios//在Vue原型下面添加,axios不是插件,无法使用vue.use()

打开components/HelloWorld.vue 代码如下:

<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
    <button @click="seachbook">seach</button>
    <p>{{books}}</p>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  data () {
    return {
      msg: 'Welcome',
      books: ''
    }
  },
  methods: {
    seachbook: function(){
      this.axios.get('./static/test.json').then(function(response){
        this.books = response.data.title
      }.bind(this))
      //修改this指向,可以不写bind(this),可改成ES6的写法 response=>this.books = response.data.title
    }
  }
}
</script>

然后在static文件夹添加一个test.json文件,内容如下:

{
  "title": "javascript"
}

回到页面点击按钮,把javascript显示出来表示请求成功(这里并不是跨域)。
这里写图片描述


接下来简单的配置一下,用豆瓣的api试试跨域
打开config/index.js,添加修改如下

module.exports = {
  dev: {

    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/api':{ 
        target: 'https://api.douban.com/v2/', 
        changeOrigin: true, 
        pathRewrite: { 
        '^/api': ''
        } 
        } 
    },

打开components/HelloWorld.vue 代码如下:

<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
    <input type="text" v-model="message" @keyup.enter="seach">
    <button @click="seach">seach</button>
    <p>{{message}}</p>
    <ul>
      <li v-for="item in booklist" v-text="item"></li>
    </ul>

  </div>
</template>

<script>
export default {
  name: "HelloWorld",
  data() {
    return {
      message: "",
      msg: "HelloWorld",
      booklist: []
    };
  },
  methods: {
    seach: function() {
      // var _this = this
      this.axios
        .get("/api/book/search?q=" + this.message)
        .then(
          function(response) {
            const bookdata = response.data.books;
            bookdata.forEach(function(val) {
              this.booklist.push(val.title)
            }.bind(this));
          }.bind(this)
        )
        .catch(function(response) {
          console.log(response);
        });
    }
  }
};
</script>

打开页面,我们试试搜索一下javascript,可见如下,把书名列了出来(来自豆瓣读书)
这里写图片描述
就这么多

详解vue+axios给开发环境和生产环境配置不同的接口地址 为什么要配置不同的接口地址 在开发过程中,前端请求访问的是自己本机启动的后台服务,此时涉及到跨域(因为端口不一样),所以在config/index.js文件中配置了代理 //检查某个文件是否存在 try { fs.statSync(path.join(__dirname, '../proxy/' + templatedir + '.json')) //如果可以执行到这里那么就表示存在了 console.log(124) proxyTable = require('../proxy/' + templatedir + '.json') } catch (e) { //捕获异常' } 立即下载

相关推荐

vue-cli 引入、配置axios的方法

主要介绍了vue-cli 引入axios的方法,文中还给大家提到了vue-cli 配置axios的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

vue-cli引入axios

vue-cli引入axios

weixin_65616154的博客 539

《AI应用架构师必学:企业AI能力地图构建的高级技巧》

企业AI能力地图,简单来说,是一种可视化工具,它展示了企业在AI领域所具备的各种能力及其相互关系。就如同城市地图展示城市的街道、建筑和设施一样,AI能力地图呈现了企业在数据处理、模型开发、算法应用等多个方面的能力布局。

AGI×大数据,开启智能时代的认知跃迁;解码AGI,赋能数据驱动的智能革命。 819

axios解决开发环境跨域问题

跨域是因为协议域名端口其中一个的不同而产生的的报错,这是浏览器发出的,有些跨域这个时候是已经成功请求了,但是被浏览器拦截了,前端可以配置代理服务器来解决跨域,这个是因为服务器与服务器之间不存在跨域,配置的代理服务器又与本地的协议端口域名都一样,这样跨域就解决了.2.在vue.config.js文件下创建同级文件 .env.development 和 .env.production。4. .env.production是生产环境请求接口的地址,在打包发布到服务器上的时候用的就是这个文件里的接口地址。

qq_64209130的博客 4789

AI 生成测试报告:从 2 小时到 10 分钟

本文分享了AI在汽车电子测试报告生成中的应用案例。作者以某车企ECU测试项目为例,对比传统报告方式(每天2小时)与AI辅助方式(每天20分钟),效率提升83%。文章详细介绍了测试报告的核心要素(测试概况、结果、问题分析、发布建议)和不同类型报告(日报、周报、总结报告)的特点,并提供了从CANoe导出测试数据的Python解析脚本示例。通过AI自动化处理,大幅减少了测试工程师在报告整理上的时间投入,为汽车电子测试工作提供了实用效率提升方案。

小明的博客 444

fpga进阶--时序约束

1、基础概念 1.1 建立(setup)/保持(hold)时间 上述的锁存沿会将数据保存下来,但是必须要满足一定的条件: 建立时间Tsu:在时钟有效沿之前,数据必须保持稳定的最小时间; 保持时间Th:在时钟有效沿之后,数据必须保持稳定的最小时间; 1.2 亚稳态(Metastability) 亚稳态是由于违背了触发器的建立和保持时间而产生的,设计中任何一个触发器都有特定的建立和保持时间,在时钟上升沿前后的这段时间窗口内,数据输入信号必须保持稳定。如果信号在这段时间内发生了变化,那么输...

HHH的博客 2443

Axios解决跨域问题(Vue2版)

什么是跨域 首先需要了解到浏览器的同源策略,同源策略是最核心也是最基本的安全功能,缺少同源策略浏览器的正常功能可能会受到影响。同源策略会阻止一个域的javascript脚本和另外一个域的能容进行交互。同源(即指在同一个域)就是两个页面具有相同的协议(protocol)、主机(host)和端口号(port)。 当一个请求url的协议、域名、端口三个之间任意一个与当前页面url不同即为跨域。 Vue中用Axios解决跨域问题 配置代理可解决使用Axios不能直接进行跨域...

weixin_43565079的博客 7万+

OpenCV中SGBM中BT代价计算

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

qq_27606639的博客 5977

React项目配置axios和反向代理和process.env环境配置等

React项目配置axios和反向代理和process.env环境配置等

牛先森家的博客 3643

H3C防火墙旁路部署实战:网关迁移到防火墙后,如何配置DHCP和VLAN间隔离策略?

本文详细介绍了H3C防火墙旁路部署实战,重点讲解网关迁移到防火墙后的DHCP配置和VLAN间隔离策略。通过实际案例和配置示例,帮助网络工程师解决传统核心交换机架构的性能瓶颈和安全管控问题,实现精细化访问控制。

weixin_42549451的博客 416

手把手教你用OpenCore在Dell Optiplex 3060上安装黑苹果(含ALC255声卡修复)

本文提供了一份详尽的指南,教你如何在Dell Optiplex 3060微型台式机上安装黑苹果系统。文章重点解决了使用OpenCore引导时的核心配置,特别是针对Intel UHD 630核显的驱动优化和Realtek ALC255声卡的修复方案,旨在帮助用户打造一个稳定可用的macOS工作站。

weixin_29275257的博客 789

vue-cli 引入axios

一、npm 安装axios,文件根目录下安装,指令如下 npm install axios 二、修改原型链,在main.js中引入axios import axios from 'axios' 接着将axios改写为Vue的原型属性, Vue.prototype.$http=axios 这样之后就可在每个组件的methods中调用$http命令完成数据请求 三、在组件中使用 ...

zeroyulong的博客 1万+

Android CCodec (十七) 硬件解码调用分析-1(基于V4l2)

简单的分析V4L2DecodeComponent和其相关内容,后续针对解码调用单独分析。

给大佬递杯卡布奇诺的博客 6594

vue项目中,使用axios跨域处理

vue使用axios解决跨域问题

胡世林的博客 4万+

xtop:multi_driven_net与incomplete_timing_cell fail reason 分析

man multi_driven_net”可以得知,这个问题是multi driven结构引起的,使用命令“get_failed_pins -reason multi_driven_net”,获取violation pin。“man incomplete_timing_cell”可以得知,这个fail reason的原因是缺少timing library cell,检查并补全后这个错误就显示了。这里选择的解决方法是修改lib文件,把inout改成input,重新lib2idb。通过这种方法解决了问题。

m0_61544122的博客 567

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Vue Axios封装 和 跨域问题

技术是没有终点的,也是学不完的,最重要的是活着、不秃。零基础入门的时候看书还是看视频,我觉得成年人,何必做选择题呢,两个都要。喜欢看书就看书,喜欢看视频就看视频。最重要的是在自学的过程中,一定不要眼高手低,要实战,把学到的技术投入到项目当中,解决问题,之后进一步锤炼自己的技术。技术学到手后,就要开始准备面试了,找工作的时候一定要好好准备简历,毕竟简历是找工作的敲门砖,还有就是要多做面试题,复习巩固。有需要面试题资料的朋友点击这里可以领取。

qiqiyuer的博客 958

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

vue 使用axios请求和vue-cli这种脚手架工具实现跨域传输

Vue遇到stylus的坑 作者:秋名 撰写时间:2020 年 6 月 21 日 技术:前端vue使用Axios请求数据,vue 前端服务器代理,使用vue-cli这种脚手架工具实现跨越传输 Axios是什么?用在什么场景?如何使用?:http://www.imooc.com/article/287900 Axios特性 1、可以在浏览器中发送 XMLHttpRequests 2、可以在 node.js 发送 http 请求 3、支持 Promise API 4、拦截请求和响应 5、转换请求数据和响应数据

Q_MingTao 703

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Vue-cli 3.x + axios 跨域方案踩坑指北【同步掘金】

缘起 最近实验课上需要重构以前写过的一个项目(垃圾堆),需要添加发生邮件提醒的功能,记得以前写过一个PHP版的实现,所以想把PHP写的功能整理成一个服务,然后在前端调用。但是这个项目是JavaWeb,也就是说我需要面对跨域的问题。不过本篇文章,讲的并不是如何解决这样的跨域问题,而是我在找如何解决这个问题的路上遇到的坑。 其实,在前端工程化大行其道的现在,前后端已经分离开来,前端为了提高工作流效率往...

AngelLover2017的博客 1502

vue开发:vue-cli+axios解决跨域问题

1、首先axios不支持vue.use()方式声明使用,看了所有近乎相同的axios文档都没有提到这一点  建议方式 在main.js中如下声明使用 import axios from 'axios'; Vue.prototype.$axios=axios; 那么在其他vue组件中就可以this.$axios调用使用1234 2.小小的提一下vue cli脚手架前端调后端数据接口时候的本

Generon的博客 3896

Vue跨域问题、Vue配置开发环境代理服务、集成Axios发送Ajax请求、集成vue-resource发送Ajax请求

偏向底层JQuery: 对xhr进行了封装。提供$get、$post等API。封装了太多DOM操作,不适合Vueaxios: 基于promise的网络请求库,支持请求拦截器和响应拦截器,体积小,只有JQuery的1/4fetch:上直接有这个方法,也是基于promise的。但是会将返回的请求包两层promise,需要两次.then才能拿到请求,IE浏览器兼容性差Vue使用Axios请求不同端口的服务,会出现类似下面的错误。即CORS跨域问题。

Bulut0907 1116

Vue cli 2 和 Vue cli 3 配置代理实现跨域

一、proxyTable // 配置好后一定要关闭原来的server,重新npm run dev启动项目。不然无效。 proxyTable: { // 用‘/api’开头,代理所有请求到目标服务器 '/api': { target: 'http:xxx.com', // 目标接口域名 changeOrigin: true, // 是否启用...

野生松 1184

vue-cli3 跨域配置-含示例

安装axios 在项目目录下运行 cnpm install --save axios vue-axios 示例 以在main.js中连接后台为例,其他页面在axios前加上this.即可。 1. main.js import Vue from 'vue' //重要!!! import axios from 'axios' //重要!!! import VueAxios from 'vue-...

malechi的博客 634

vue php axios 跨域,在vue项目中,使用axios跨域处理

下面我就为大家分享一篇在vue项目中,使用axios跨域处理,具有很好的参考价值,希望对大家有所帮助。跨域,一个很是让人尴尬的问题,有些人可以在后台中设置请求头,但是很多前端并不具备后台的知识,并无法自己独立的搭建一个服务器,所以就变成了一个尴尬的事情当然,有很多的虚拟服务器,能够解决跨域问题,他们的实质都是通过后台取与后台沟通,从而委婉的解决跨域问题正好,webpack正有这种功能,所以vue-...

weixin_42367233的博客 256

前端axios+webpack解决跨域问题(不依靠后端,独立解决跨域)

前端axios+webpack解决开发环境跨域问题(不依靠后端,独立解决跨域问题) 以 vue 项目举例: // ... axios.get('https://xxx.com/api/getinfo').then(res => { console.log(res); }).catch(err => { console.log(err) }) 直接这么写,会出现 跨域问题,接下来通...

艾欢欢的博客 935

axios get怎么还会显示跨域_vue-cli axios请求方式及跨域处理问题

vue-cli axios请求方式以及跨域处理安装axioscnpm install axios --save在要使用axios的文件中引入axiosmain.js文件 :import axios from 'axois'要发送请求的文件:import axios from 'axois'在config/index.js文件设置代理dev: {proxyTable: {// 输入/api 让其去访...

weixin_39794385的博客 232

axios nginx 生产环境_Vue Axios之生产/开发环境跨域问题解决

Vue Axios开发环境、生产环境跨域问题解决一、前置知识首先要了解几个Vue-cli的几个配置参数。另:从 Vue CLI 3.3 起baseUrl已弃用,请使用publicPath1. publicPath它是部署你的应用包时的基本URL。默认为 '/'。Vue Cli默认项目是被部署在域名的根路径下。比如你要把打包生成的文件部署在https://www.lhch.com下,那么采用默认设置...

weixin_39607473的博客 367
上一篇: vue + element-ui 简单的入门小例子——todolist
下一篇: Vue-cli 在IE下[vuex] vuex requires a Promise polyfill in this browser.问题
瓶子里的海怪
博客等级 码龄10年 52粉丝 18原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值