当前位置: 首页 > article >正文

微信小程序请求数据接口封装

文章目录

  • 前言
  • 一、方法参考站
  • 二、使用步骤
    • 1.首先需要创建api文件夹,在文件夹里创建api.js文件
    • 2.修改app.js
    • 3.页面里使用
  • 总结


前言

最近在写小程序项目,为了节约代码量,以及为了防止后期多处修改地址容易出问题或者遗漏,所以对数据请求进行了封装操作,具体操作如下。


提示:以下是本篇文章正文内容,下面案例可供参考

一、方法参考站

1、微信小程序请求封装
2.、请求头设置

二、使用步骤

1.首先需要创建api文件夹,在文件夹里创建api.js文件

api.js 代码如下(示例):

根据自己的数据需求更改调整即可

const app = getApp()

const request = (url, options) => {
  
  let header = {}
  if (options.method == 'POST') {
    header = {
      'content-type': 'application/x-www-form-urlencoded',
    }
  } else {
    header = {
      'content-type': 'application/json',
    }
  }
   return new Promise((resolve, reject) => {
       wx.request({
            // {app.globalData.host}为接口请求中的公共部分写在app.js中
           url: `${app.globalData.host}${url}`,
           method: options.method,
           data: options.method === 'GET' ? options.data : JSON.stringify(options.data) && options.method === 'POST' ? options.data : options.data,
           header: header,
           success(request) {
               if (request.data.code === '20000') {
                   resolve(request.data)
               } else {
                   reject(request.data)
               }
           },
           fail(error) {
               reject(error.data)
           }
       })
   })
}
 
const get = (url, options = {}) => {
   return request(url, { method: 'GET', data: options })
}
const post = (url, options) => {
   return request(url, { method: 'POST', data: options })
}
const put = (url, options) => {
   return request(url, { method: 'PUT', data: options })
}
// 不能声明DELETE(关键字)
const remove = (url, options) => {
   return request(url, { method: 'DELETE', data: options })
}
 
module.exports = {
   get,
   post,
   put,
   remove
}

2.修改app.js

app.js 代码如下(示例):

//app.js

App({
  onLaunch: function () {},
  globalData: {
    host: "这里是你要访问的后端地址",
  },
  
})

3.页面里使用

在需要使用数据请求的页面.js文件里 代码如下(示例):

import api from '../../api/api'  //根据你自己的路径引入文件
Page({
  /**
   * 页面的初始数据
   */
  data: {
    ewmImg:'',//二维码图片
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
   
    this.getewmImg()
  },
  // 获取二维码图片
  getewmImg('你要传输的数据'){
    var that = this
    api.post('/weixin/qrcode-img', '你要传输的数据').then(res => {
       that.setData({
          ewmImg:res.data.qrcodeimg
        })
    }).catch(err => {    
    })
  },
  
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})

总结

以上就是今天要记录的有关微信小程序请求接口封装问题的部分内容,文章仅仅为个人笔记所用,希望能帮助到有需要的人。


http://www.kler.cn/news/293343.html

相关文章:

  • MutationObserver小试牛刀
  • 计算机基础知识-2
  • 微服务--Nacos
  • 前端进阶:JavaScript实现优雅遮罩层下的表单验证技巧
  • AI聊天应用不能上架?Google play对AI类型应用的规则要求是什么?
  • 高效实用的网站ICP备案查询接口
  • VMEMMAP分析
  • Oracle RAC关于多节点访问同一个数据的过程
  • C 语言指针与数组的深度解析
  • 鸿蒙轻内核M核源码分析系列四 中断Hwi
  • 无人机纪录片航拍认知
  • LLM指令微调实践与分析
  • 用RPC Performance Inspector 优化你的区块链
  • 技术周刊 | Rspack 1.0、v0 支持 Vue、2024 年度编程语言排行榜、Ideogram 2.0、从 0 实现一个 React
  • 深度学习(九)-图像形态操作
  • 《C++进阶之路:探寻预处理宏的替代方案》
  • Spring Boot实现大文件分片下载
  • 谈一谈MVCC
  • 人工智能、机器学习和深度学习有什么区别?应用领域有哪些?
  • Linux 简介
  • HNU-2023电路与电子学-实验1
  • 如何看待AI技术对人们生活的影响?
  • 【网络安全】Sping Boot 未授权访问敏感数据
  • 时下改变AI的6大NLP语言模型
  • 关于 export HF_ENDPOINT=https://hf-mirror.com
  • DP(Display Port)
  • 缓存对象反序列化失败
  • Spring Bean 作用域
  • 【C题成品论文2已出】24数学建模国赛C题第二套成品论文(附参考代码)免费分享
  • FPGA搭建XDMA中断模式的PCIE通信架构,简单读写测试,提供7套工程源码和技术支持