vue项目接口响应之前默认给所有接口加上公共参数的操作

在request.js中的请求拦截器里面添加如下代码

如果是get请求 需要在URL后面拼接的话
用到的是

config.params = {'appkey':appkey}

如果是post请求 不需要在URL后面拼接的话
用到的是

config.data = {'appkey':appkey}

那这时候直接添加会有问题 在请求拿到的参数中只会拿到你添加的这个公共参数 页面中参数就没有了 就会出问题
所以 我们需要在加上公共参数的基础上 拼接上我们原有的参数某一些参数
这样的就大功告成
在这里插入图片描述

 //登录成功以后给每个接口加上公共参数appkey
  let appKey = window.localStorage.getItem("appKey")
  if (appKey) {
    config.data = Object.assign({ 'appKey': appKey }, config.data)
  }

在这里说下 appkey是在登陆成功以后才要在每个接口加上的公共参数
所以会判断下当参数有值的时候才会添加

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,这是一种非常好的实践方式。在Vue项目中,我们可以将所有的接口请求都统一放在一个apis文件夹中进行管理。这样做的好处有以下几点: 1. 方便维护:将所有接口请求都放在一个文件夹中,可以更方便地进行管理和维护。我们只需要在一个地方修改接口地址,就可以让所有相关的页面都生效。 2. 代码复用:将接口请求封装成一个函数,可以在不同的组件中进行复用。 3. 易于测试:将接口请求封装成函数,我们可以更方便地进行单元测试,确保代码的正确性。 具体实现方式可以参考以下步骤: 1. 在Vue项目的src目录下创建一个apis文件夹。 2. 在apis文件夹中创建一个index.js文件,用于统一导出所有的接口请求函数。 3. 在index.js文件中,可以使用axios库来进行接口请求的封装。 4. 在需要使用接口请求的组件中,引入apis/index.js文件,然后调用对应的接口请求函数即可。 下面是一个示例代码: ```javascript // apis/index.js import axios from 'axios' const BASE_URL = 'https://api.example.com' export const getUserInfo = () => { return axios.get(`${BASE_URL}/user/info`) } export const login = (username, password) => { return axios.post(`${BASE_URL}/user/login`, { username, password }) } ``` ```javascript // 在组件中使用接口请求 import { getUserInfo, login } from '@/apis' // 获取用户信息 getUserInfo().then(res => { console.log(res.data) }) // 登录 login('username', 'password').then(res => { console.log(res.data) }) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值