当前位置:   article > 正文

vue 访问第三方 跨域, 配置vue.config.js_vue调用第三方接口跨域

vue调用第三方接口跨域

目录

0 config 文件被修改 一个要重启vscode 配置文件才会生效

1 第一种 (有两种写法)

1.1 配置vue.config.js 

1.2 axios 使用

1.3 终端打印

2 第二种方法 --> 错误 --> 没有运行成功

2.1 配置vue.config.js  --> 就是api 不被设置成 替换为 /

2.2 axios 使用

2.2.1 错误尝试1 

 2.2.2 错误尝试2


0 config 文件被修改 一个要重启vscode 配置文件才会生效

1 第一种 (有两种写法)

1.1 配置vue.config.js 

  1. const { defineConfig } = require('@vue/cli-service')
  2. module.exports = defineConfig({
  3. transpileDependencies: true,
  4. devServer: {
  5. proxy: {
  6. "/api/": {
  7. target: 'https://echarts.apache.org',
  8. changeOrigin: true, // 跨域访问设置,true代表跨域
  9. ws: true,
  10. 'secure': true, // false为http访问,true为https访问
  11. 'pathRewrite': { // 路径改写规则
  12. '^/api/': "/" // 以/api/为开头的改写为'/'
  13. }
  14. },
  15. },
  16. },
  17. })

1.2 axios 使用

  1. let url = '/api/examples/data/asset/data/stock-DJI.json' 这里会匹配到前面我们设置的/api/',代替为https://echarts.apache.org/examples/data/asset/data/stock-DJI.json',
  2. /**
  3. 逻辑
  4. 首先 url 中的 /api/ 被替换成 /
  5. 然后 url 被拼接 target的值 + url的值(被替换后的值)
  6. */
  7. // console.log('url', url)
  8. this.axios.get(url).then((rawData) => {
  9. console.log('---url---', url)
  10. console.log('---rawData-', rawData)
  11. var data = splitData(rawData.data);

1.3 终端打印

2 第二种方法 --> 错误 --> 没有运行成功

2.1 配置vue.config.js  --> 就是api 不被设置成 替换为 /

  1. const { defineConfig } = require('@vue/cli-service')
  2. module.exports = defineConfig({
  3. transpileDependencies: true,
  4. devServer: {
  5. proxy: {
  6. "/api/": {
  7. target: 'https://echarts.apache.org',
  8. changeOrigin: true, // 跨域访问设置,true代表跨域
  9. ws: true,
  10. 'secure': true, // false为http访问,true为https访问
  11. // 'pathRewrite': { // 路径改写规则
  12. // '^/api/': "/" // 以/api/为开头的改写为'/'
  13. //}
  14. },
  15. },
  16. },
  17. })

2.2 axios 使用

2.2.1 错误尝试1 

  1. let url = '/api/examples/data/asset/data/stock-DJI.json'
  2. // console.log('url', url)
  3. this.axios.get(url).then((rawData) => {
  4. console.log('---url---', url)
  5. console.log('---rawData-', rawData)

 2.2.2 错误尝试2

  1. let url = 'examples/data/asset/data/stock-DJI.json'
  2. // console.log('url', url)
  3. this.axios.get(url).then((rawData) => {
  4. console.log('---url---', url)
  5. console.log('---rawData-', rawData)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/49977
推荐阅读
相关标签
  

闽ICP备14008679号