方式一:在根目录新建一个api.js的文件用于存放wx.request的代码

api.js

const app = getApp();
let postApi = function (apiUrl, data, successCallback, errorCallback, completeCallback){let apiData = {};if (data){apiData=data;}apiData.user_token=app.globalData.userToken;wx.request({url: app.rootUrl + apiUrl,method: "POST",data: apiData,success: res => {successCallback(res.data);},fail: err => {if (errorCallback){errorCallback(err);}else{wx.showToast({title: e,icon: 'none',duration: 1500,mask: false})}},complete: () => {if (completeCallback) {completeCallback();}}})
}export default postApi;

注意:在app.js中定义rootUrl,rootUrl是接口url的公共部分 ,apiUrl是接口url的剩余部分

index.js中调用接口

const app = getApp();
import postApi from "../../api.js";postApi("apiUrl?_tq=" + new Date().getTime(), data, res => {if (res.code == 0) {//请求成功执行}})

方式二:request.js文件

// export const API_URL = ''; // 项目域名/*** 网络请求封装 fetch*/
export default function fetch(url, params, showLoading = true, method) {if (showLoading) {wx.showLoading({ title: '加载中' });}var cookie = wx.getStorageSync('cookie');if (!cookie) {cookie = '';}return new Promise((resolve, reject) => {wx.request({url: `${API_URL}${url}`,data: params || {},method: method || 'post',header: {"Accept": "*/*","Content-Type": "application/json; charset=UTF-8'","Cookie": cookie,},success: res => {resolve(res.data);},fail: error => {reject(error);},complete() {if (showLoading) {wx.hideLoading();}}})})
}

在app.js文件引入该文件

在页面调用接口

在页面引入const app = getApp();

  getWxUser(userD) {var params = {name:user.name,phone:userD.phone}app.fetch(接口地址, params).then(ret => {if (ret.status) {} else {wx.showModal({showCancel: false,content: ret.errmsg});}})},

微信小程序封装wx.request接口(两种方式)相关推荐

  1. 微信小程序获取用户信息的两种方式

    1.只获取头像和昵称(不能将用户信息返回给后端) <open-data class="tx" type="userAvatarUrl"></o ...

  2. 今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2...

    今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2 查官方文档 解决方法 在 PowerShell中运行以下内容, 然后重启服务器 # Enab ...

  3. 微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常

    微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常 参考文章: (1)微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,i ...

  4. 微信小程序页面间通信的5种方式

    微信小程序页面间通的5种方式 PageModel(页面模型)对小程序而言是很重要的一个概念,从app.json中也可以看到,小程序就是由一个个页面组成的. 如上图,这是一个常见结构的小程序:首页是一个 ...

  5. 详解微信小程序页面间传递信息的三种方式

    详解微信小程序页面间传递信息的三种方式 在开发微信小程序的时候,经常会遇到在页面间传递信息的情况,有三种方法可以实现. 1. 使用数据缓存 将要存储的数据使用以下方法放入缓存 wx.setStorag ...

  6. 微信小程序生成二维码的两种方式

    微信小程序生成二维码的两种方式 2020/11/10 第一种,利用网络api自动生成 <image class="xin-erma" src="{{'https:/ ...

  7. 微信小程序实现跳转的几种方式总结(推荐)

    今天把实现微信页面的跳转的几种方法总结分享下 1.使用导航组件,标签,页面链接来实现(可以发现点击时有背景) <!-- sample.wxml --><view class=&quo ...

  8. 微信小程序设置背景图的几种方式

    微信小程序设置背景图的几种方式 原本在html中可以通过background-image来设置背景图片 .page {width: 100%;height: 100%;background-size: ...

  9. 微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常(转)...

    问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败, PC端是可以请求数据出来的 新版开发者工具增加了https检查功能:可使用此功能直接检查排查ssl协议版本问题: 可能 ...

最新文章

  1. CVPR2020论文解读:3D Object Detection三维目标检测
  2. 快速排序的难点_数据结构考研重难点解析:快速排序
  3. SpringBoot 使用fastjson
  4. [Windows]ping itsafe环境变量
  5. sqlserver、oracle数据库排序空值null问题解决办法
  6. 运放全波整流电路_10种精密全波整流电路
  7. 有关Drools业务规则引擎的完整教程
  8. Spring JPA数据+休眠+ MySQL + Maven
  9. 韩顺平php视频笔记48 函数进阶
  10. 他实现了AlphaGo Zero的算法,发现可能还得训练1700年 | 代码
  11. asp fso的神奇功能
  12. 设计模式-设计原则-迪米特法则
  13. DSP复习笔记(2)——TMS320F28335芯片内部结构
  14. oracle现金流量表逻辑,【实战】编制现金流量表的一些个人理解(附下载勾稽表)...
  15. 安卓开发—Android基础
  16. 爬取贴吧上的图片到本地
  17. 无法识别的usb跟这台计算机,【实战成功】无法识别的USB设备:跟这台计算机连接的一个USB设备运行不正常,WINDOWS无法识别...
  18. 北大计算机专硕学费,北京大学专业硕士学费被曝高达2.2万元/年
  19. 51单片机数码管滚动显示学号_数协微课 | LED数码管与51单片机应用
  20. Vue 前端导出Excel表格,多级表头合并

热门文章

  1. C#毕业设计——基于C#+asp.net+sqlserver的图书销售管理系统设计与实现(毕业论文+程序源码)——图书销售管理系统
  2. c# .net 读取word文档文件,.txt、.doc、.docx、.xls、xlsx
  3. 处理中文乱码和中文部分乱码 .
  4. 长安UNIT鸿蒙系统,花13万提辆长安UNIT值吗?行驶1600公里后,车主终于说了句大实话...
  5. python抖音表白软件_Python实现爆火抖音的弹窗表白软件
  6. 百度网盘下载慢怎么解决
  7. 利用Python产生加密表和解密表
  8. 什么是市场?市场营销基础入门
  9. LeetCode刷题day50
  10. ElasticSearch系列二 DSL查询