首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >vue项目使用axios对接第三方api,并做跨域处理

vue项目使用axios对接第三方api,并做跨域处理

作者头像
宋天伦
发布2020-07-15 16:42:48
发布2020-07-15 16:42:48
5.2K0
举报
文章被收录于专栏:fryteafrytea

简介

使用vue框架对接第三方接口时,常常使用anxios。

有很多时候你在构建应用时需要访问一个 API 并展示其数据。做这件事的方法有好几种,而使用基于 promise 的 HTTP 客户端 axios 则是其中非常流行的一种。 vue官网描述

基本步骤

安装anxios

代码语言:javascript
复制
npm install axios --save

配置

在 src/main.js 中如下声明使用

代码语言:javascript
复制
import axios from 'axios';
 
Vue.prototype.$axios=axios;

跨域处理

在 config/index.js 中的 的dev 添加以下代码,设置一下proxyTable

代码语言:javascript
复制
dev: {
 ...
    //加入以下
    proxyTable:{
      '/seniverseapi': {
        target : 'https://api.seniverse.com',    //设置你调用的接口域名和端口号.别忘了加http
        changeOrigin : true,   //允许跨域
        pathRewrite : {
          '^/seniverseapi': ''
          // '/'这里理解成用‘/seniverseapi’代替target里面的地址,后面组件中我们掉接口时直接用api代替。比如我要调用'https://api.seniverse.com/v3/weather/now.json?key=我的密钥&location=beijing&language=zh-Hans&unit=c',直接写'/seniverseapi/v3/weather/now.json?key=我的密钥&location=beijing&language=zh-Hans&unit=c
'参数即可
        }
      }
    },
...
}

api调用

代码语言:javascript
复制
axios
            .get(/seniverseapi/v3/weather/now.json?key=我的密钥&location=beijing&language=zh-Hans&unit=c
)
            .then(response => (console.log(response)))
            .catch(error => (console.log(error)))

效果图


Author: Frytea

Title: vue项目使用axios对接第三方api,并做跨域处理

Link: https://cloud.tencent.com/developer/article/1662429

Copyright: This work by TL-Song is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 简介
  • 基本步骤
    • 安装anxios
    • 配置
    • 跨域处理
    • api调用
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档