Vue3 配置代理和使用全局axios请求数据

2023-05-16

更详细请参考:

https://blog.csdn.net/qq_28550263/article/details/120633610

vue3中配置全局代理和使用axios向服务器请求数据

main.ts

import { createApp } from 'vue'
import VueAxios from 'vue-axios'
import App from './App.vue'
import './registerServiceWorker'
import router from './router'
import store from './store'

import axios from 'axios'               // 引入axios
axios.defaults.baseURL = '/api'         

const app = createApp(App)  指向Vue
app.config.globalProperties.$rqst= axios 下挂载
app.use(VueAxios, axios)
app.use(store)
app.use(router)
app.mount('#app')


手动在vue3项目中创建vue.config.js,配置proxy

// const webpack = require('webpack');
// const webpack = require('webpack');
module.exports = {
  publicPath: './',
  outputDir: 'dist',
  assetsDir:"statics",
  indexPath:"index.html",
  productionSourceMap: process.env.NODE_ENV !== 'production'? false : true,
  /* webpack-dev-server 相关配置 */
  devServer: { 
    /* 使用代理 */
    proxy: {
        '/api': {
            target: 'http://xxxx.xxxx.xxxx.xxxx:xxxx/',  // 目标代理服务器地址
            changeOrigin: true,                          // 允许跨域
            pathRewrite:{
              "^/api":''
            }
        },
    },
 },
}

某组件中使用请求

import { defineComponent, getCurrentInstance} from 'vue';
export default defineComponent({
  name:'name',
  props:{
    datas:{
        type: Object,
        default: function(){
            return {......};
        }
    }
  },

  //  setup 在整个组件生命周期前执行一次且仅一次,可以在这时获取全局参数的代理对象
  setup(props) {
    let datas = (props as any).datas;                  // 组件参数对象
    const { proxy } = (getCurrentInstance() as any);   // 全局变量代理对象

    return{
        proxy
    }
  },
  
  methods: {
      // 可以在 methods 中定义请求的函数以备调用
      getCodeList(user:string){
        this.proxy.$rqst.post('/mycode/getCodeList',{"user":user})
        .then((response: any)=>{
          ......
        });
      },
  },
  
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue3 配置代理和使用全局axios请求数据 的相关文章

  • axios 不发送 cookie

    我有两个应用程序 一个是用 Laravel 编写的服务器端应用程序 另一个是用 VueJS 编写的客户端应用程序 vue 应用程序使用 laravel 应用程序提供的 api 授权流程 用户尝试登录 服务器发送两个token给客户端 a a
  • 我应该如何在 axios GET 请求中发送 JWT 令牌? [复制]

    这个问题在这里已经有答案了 我是 Vue js 新手 想要在组件中向受限 api 发出请求 computed token return this store getters getToken created axios get this B
  • 将数组作为 axios 请求中的参数传递

    我需要通过以下方式提出请求axios 其中我想将这种类型的数组作为数组传递 1 2 3 4 我需要这些数据从我的后端进行选择查询 我的问题是 我应该使用GET or POST请求以及传递该数组的正确方法是什么 你可以POST它作为 json
  • Axios“无法在模块外部使用 import 语句”

    我有一个 Vue js 应用程序 其中两个文件包含 import axios from axios 这些文件位于应用程序内的 src lib 中 并在第一行包含 import 语句 无论 package json 说什么 在 Github
  • 如何在 Nuxt3 中使用 @nuxtjs/axios 模块?

    我有这段代码可以从中获取API数据https fakestoreapi com products https fakestoreapi com products
  • 在 Axios 中自定义日期序列化

    默认情况下 当 JavaScript 对象包含 Date 对象时 Axios 将其序列化为 UTC 这意味着传输的时间是使用时区进行转换的 这不适用于我的用例 我需要将没有时区转换的时间发送为 UTC 我实现了一个基于的自定义序列化器 15
  • 如何用 jest 测试 axios 拦截器

    在我的项目中 我有一个命名空间 导出一些使用 Axios 的函数 在同一个文件中 我向 axios 实例添加一个拦截器 如下所示 axios interceptors response use res gt res error gt if
  • 使用 axios 的 API 请求始终未经 Laravel API 的授权

    我正在使用一个个人项目Laravel https laravel com 5 6 和Axios https github com axios axios库 标准 Laravel5 6 https laravel com docs 5 6包裹
  • 在react-native android应用程序中使用axios传递参数

    我需要在react native中使用AXIOS传递一些参数 但不知道应该如何使用AXIOS传递参数 I found 这个帖子 https stackoverflow com q 48223906 5306371有用 但它不能完全满足我的问
  • 从 REST API 返回的图像始终显示损坏

    我正在使用 React 为艺术作品集应用程序构建内容管理系统 客户端将 POST 到使用 Mongoose 插入 MongoDB 的 API 然后 API 在数据库中查询新插入的图像 并将其返回给客户端 这是我使用 Mongoose 连接到
  • Axios-一次发出多个请求(vue.js)

    如何使用 axios 和 vue 并行发出多个请求 由于 axios 可以被 React 和 Vue 使用 因此代码几乎相同 请务必阅读axios 文档 https github com axios axios 你可以从那里理解它 无论如何
  • 注册不起作用,注册未定义错误 React Native

    我刚刚从 Udemy 购买了 React Native 的课程 Stephen Grider 是该课程的作者 所以基本上我是在他打字的时候和他一起打字的 但不幸的是我在跟踪应用程序的注册过程中陷入了错误 每当我在输入电子邮件和密码后单击 注
  • 如何使用 async-await from function 从异步函数返回值? [复制]

    这个问题在这里已经有答案了 如何从异步函数返回值 我试着喜欢这个 const axios require axios async function getData const data await axios get https jsonp
  • axios 拦截器内的 useContext

    我不明白为什么我的 useContext 没有在这个函数中被调用 import useContext from react import MyContext from contexts MyContext js import axios f
  • 为什么express服务器接收到的前端数据是未定义的?

    我目前正在开发社交媒体 Mern Stack React 应用程序 我使用 Node js 和 Express 作为我的后端服务 还使用 mongoose 来存储我的数据 并使用 axios 和 redux thunk 将后端连接到前端 到
  • 从vue中的api加载路由

    我正在尝试从我的 API 在 Vue 应用程序中加载路由 我尝试将数据推送到路由变量并使用 addRoutes 方法 但没有运气 我认为异步可能存在问题 但为什么 addRoutes 不起作用 这是我的代码 import Vue from
  • 如何将 Content-Type 更改为 application/json React

    我正在使用 axios 从 api 获取内容 我想使用 axios 在 React 中将 Content Type 设置为 application json 需要纠正什么 下面是参考代码 const config headers Conte
  • axios 如何将 blob 与 arraybuffer 作为响应类型处理?

    我正在下载一个 zip 文件axios https www npmjs com package axios 为了进一步处理 我需要获取已下载的 原始 数据 据我所知 Javascript 有两种类型 Blob 和 Arraybuffers
  • axios onUploadProgress 和 onDownloadProgress 不适用于 CORS

    我有一个用 Node js 编写的服务器 以及一个在浏览器中运行的 Web 客户端 客户端应向服务器上传和下载一些文件 服务器并不是最初交付客户端的服务器 所以这里就出现了跨域的情况 服务器使用cors https www npmjs co
  • 无法在地图循环中访问 Axios 调用的值

    我有一个 javascript 对象 其 ID 对应于一组画廊 我使用地图循环遍历它 在每个循环中 我都会进行 axios 调用来获取当前 id 的图库 最后 我需要一个包含所有画廊内容的数组 问题是地图循环完成后我无法访问数据 当我 co

随机推荐