uni-app封装request请求及get、post、put等方法

这篇具有很好参考价值的文章主要介绍了uni-app封装request请求及get、post、put等方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

直接上代码

request.js文件

export default {

  common: {

    baseUrl: "http://172.20.4.212:3000/api",

    data: {},

    header: {

      "Content-Type": "application/json",

      "Content-Type": "application/x-www-form-urlencoded"

    },文章来源地址https://www.toymoban.com/news/detail-487473.html

    method: "GET",

    dataType: "json"

  },

  request (options = {}) {

    uni.showLoading({

      title: '加载中...'

    })

    options.url = this.common.baseUrl + options.url

    options.data = options.data || this.common.data

    options.header = options.header || this.common.header

    options.method = options.method || this.common.method

    options.dataType = options.dataType || this.common.dataType

    console.log('option', options)

    return new Promise((resolve, reject) => {

      uni.request({

        ...options,

        success: (res) => {

          if (res.statusCode != 200) {

            return reject()

          }

          setTimeout(() => {

            uni.hideLoading()

          }, 200)

          let data = res.data.data

          resolve(data)

        },

        fail: (error) => {

          reject(error)

          uni.showToast({

            mask: true,

            icon: 'error',

            title: '接口或网络异常',

            duration: 2000

          })

        }

      })

    })

  },

  /**

   * 本地资源上传到开发者服务器

   */

  upload (options = {}) {

    return new Promise((resolve, reject) => {

      uni.uploadFile({

        url: options.url,

        filePath: options.data.filePath,

        name: 'file',

        success: (res) => {

          resolve(JSON.parse(res.data))

        },

        fail (error) {

          reject(error)

          uni.showToast({

            mask: true,

            icon: 'none',

            title: '接口或网络异常',

            duration: 2000

          })

        }

      })

    })

  },

  uploadFile (url, data) {

    return this.upload({

      url,

      data

    })

  },

  /**

   * get请求

   * @param {String} url

   * @param {Object} data

   */

  get (url, data) {

    return this.request({

      url,

      data,

      method: 'GET',

    })

  },

  /**

   * post请求

   * @param {String} url

   * @param {Object} data

   */

  post (url, data) {

    return this.request({

      url,

      data,

      method: 'POST',

    })

  },

  /**

   * put请求

   * @param {String} url

   * @param {Object} data

   */

  put (url, data) {

    return this.request({

      url,

      data,

      method: 'PUT'

    })

  },

  /**

   * delete请求

   * @param {String} url

   * @param {Object} data

   */

  del (url, data) {

    return this.request({

      url,

      data,

      method: 'DELETE'

    })

  },

}

main.js文件

import App from './App'

import Vue from 'vue'

import './uni.promisify.adaptor'

import http from './utils/request.js'

Vue.prototype.$http = http

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({

  ...App

})

app.$mount()



 

index.js文件

init () {

      this.$http.get('/indexList/data').then(res => {

        this.topBar = res.topBar

        this.newTopBar = this.initData(res)

      }).catch(() => {

        uni.showToast({

          title: '请求失败',

          icon: 'none'

        })

      })

    },

到了这里,关于uni-app封装request请求及get、post、put等方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uni-app:请求后端数据uni.request

     完整代码: 核心 使用的方法 uni.request({...});  与接口相连接的路径 注:这里标红的部分为全局变量 例如: url:\\\'https://域名/api/Produce/select_employee\\\'(表示在使用该域名下的api中的Produce文件的select_employee方法) url: getApp().globalData.position + \\\'Produce/select_employee\\\', 传入数据到后端 

    2024年02月16日
    浏览(49)
  • uni-app项目封装http请求和不封装请求

    在页面文件中 该请求的封装方式适用于_gt、_mt类型的请求,应该也可以做到其他类型; 注意看代码中的注释 在uilt/api.js中 在uilt/http.js中 在页面文件中 注意看代码中的注释;不封装需要使用 uni.request这个API来进行请求

    2024年02月13日
    浏览(53)
  • uni-app中调取接口的三种方式与封装uni.request()

    1、uni.request({}) 2、uni.request({}).then() 3、async/await 1、创建一个对象,将该对象挂在Vue的原型下 新建 @/common/request.js 文件 初步写法(仅供参考): 二次更改: 2、进入main.js文件 例:在任意文件中书写下列代码可以调用。 this.$Z.get(); 3、在页面中调用 uniapp的网络请求方法 CODE u

    2024年02月09日
    浏览(49)
  • uni-app 之 uni.request 网络请求API接口

    uni-app 之 uni.request 网络请求API接口 image.png

    2024年02月09日
    浏览(50)
  • Post和Get,Post和Put请求的区别

    最直观的区别就是 Get 请求把参数包含在 url 中,但是 Post 通过 request body 传递参数 1、应用场景 Get 请求是一个幂等的请求,一般 Get 请求用于对服务器资源不会产生影响的场景(如请求一个网页的资源); Post 不是一个幂等的请求,一般用于对服务器资源会产生影响的场景(

    2024年02月02日
    浏览(60)
  • ajax构造get、post、put请求

    前端代码: 后端代码:

    2024年02月12日
    浏览(49)
  • 使用Flask.Request的方法和属性,获取get和post请求参数(二)

    在Python发送Post、Get等请求时,我们使用到requests库。Flask中有一个request库,有其特有的一些方法和属性,注意跟requests不是同一个。 用于服务端获取客户端请求数据。注意:是未经任何处理的原始数据而不管内容类型,如果数据时json的,则取得是json字符串,排序和请求参数

    2024年02月13日
    浏览(46)
  • JAVA调用第三方接口的GET/POST/PUT请求方式

    GET请求 POST请求 POST请求(JSON传参) PUT请求(传TOKEN)

    2024年02月03日
    浏览(63)
  • 前端Get Post Put Delect请求 传参数 不传参数给后端

    Get请求不传参、Get请求传不是实体类的参数、Get请求传实体类的参数 Post 请求不传参数、Post请求传不是实体类的参数、Post请求传实体类的参数  总是分不清,其中Delect 请求使用的地方很少就先记录Delete请求吧 前端 前端跳后端 后端 前端 前端跳后端 后端 前端 前端跳后端 后

    2024年02月07日
    浏览(64)
  • python中应用requests库模拟postman请求携带token,使用get和post方法请求头携带token

    实际开发中, Python程序中需要调用后台接口 ,充当前端, 后端规定请求头需要携带token postman中 form-data、x-www-form-urlencoded的区别_叫我峰兄的博客-CSDN博客 python requests 带请求头Token发起http请求_python request token_软件测试李同学的博客-CSDN博客 python发送requests请求时,使用登录的

    2024年02月16日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包