封装接口

#

export function fetch (url, parameObj = {}, method = 'POST') {
  return new Promise((resolve, reject) => {
    var postParameObj = {}
    var getParameObj = {}
    if (method.toUpperCase() === 'POST' || method.toUpperCase() === 'PUT') {
      postParameObj = parameObj
    } else {
      getParameObj = parameObj
    }
    let headers = {}

    if (parameObj.headers) {
      headers = parameObj.headers
    }

    headers['X-Auth-Value'] = ''
    headers['X-Emp-No'] = ''
    axios({
      method: method,
      url: url,
      data: postParameObj,
      params: getParameObj,
      // timeout: 3000,
      headers: headers
    })
      .then((response) => {
        if (response.data.code.code === '0000') {
          resolve(response.data)
        } else if (response.data.code.code === '0002') {
          const domain = window.location.href
          window.location.href = config.uac_domain + '?businessSystemCode=100000432200&url=' + encodeURIComponent(domain)
        } else {
          reject(response.data.code)
        }
      })
      .catch((error) => {
        reject(error)
      })
  })
}
  uploadSpaceImage (formData) {
    var api = `${config.space_api}space/uploadImage`
    return fetch(api, formData, 'POST')
  },
spaceSettingService.uploadSpaceImage(fd)
        .then(res => {
          callback(res)
        })
        .catch(err => {
          console.log(err)
          loading.close()
          // callback(err)
        })
uniapp是一个使用Vue.js开发所有前端应用的框架,可以编译到iOS、Android、H5、以及各种小程序等多个平台。封装接口在uniapp中通常是指将HTTP请求进行封装,使得可以方便地在应用中进行数据的请求和传输。以下是封装接口的基本步骤和一些常见的做法: 1. 创建一个专门的api文件夹:在这个文件夹下,根据业务模块创建对应的api文件,比如user.js,product.js等。 2. 封装请求方法:在每个api文件中,定义一个或多个函数用于处理HTTP请求。这些函数可以使用uniapp内置的uni.request方法,或者使用更高级的库如axios。 3. 统一错误处理:在请求方法中加入统一的错误处理逻辑,如请求超时、网络异常、服务器错误等,确保所有接口调用都有良好的错误处理机制。 4. 参数统一处理:确保每个请求方法都能处理好传入的参数,比如转换成服务器需要的格式,添加必要的认证信息等。 5. 返回响应处理:对于服务器返回的响应数据,封装方法中应当进行适当的处理,比如将错误信息或状态码提取出来,便于调用者处理。 示例代码: ```javascript // user.js import request from '@/utils/request.js'; // 引入封装好的request方法 export function getUserInfo() { return request({ url: '/api/user/info', // 后端接口地址 method: 'GET', success(res) { // 请求成功的处理 return res.data; }, fail(err) { // 请求失败的处理 throw err; } }); } ``` 使用封装好的接口: ```javascript import { getUserInfo } from '@/api/user.js'; getUserInfo().then(data => { console.log(data); }).catch(error => { console.error(error); }); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值