遇到问题不要慌

做项目离不开请求数据

1.为什么要封装api去请求接口数据

做微信小程序的时候请求数据的时候会多次用到wx.request请求,如果每次都去写一遍

wx.request({url: 'example.php', //仅为示例,并非真实的接口地址data: {x: '',y: ''},header: {'content-type': 'application/json' // 默认值},success (res) {console.log(res.data)}
})

反复的复制这段代码,会让自己的项目代码比较冗余,接下来就需要封装一个api去有效的管理接口请求

额 就不多说废话了,直接上代码了

首先在util文件下新建一个api.js文件

api封装代码

const GET = 'GET';
const POST = 'POST';
const PUT = 'PUT';
const FORM = 'FORM';
const DELETE = 'DELETE';const baseURL = 'http://kumanxuan1.f3322.net:8001';function request(method, url, data) {return new Promise(function(resolve, reject) {let header = {'content-type': 'application/json',};wx.request({url: baseURL + url,method: method,data: method === POST ? JSON.stringify(data) : data,header: header,success(res) {console.log(res);//请求成功返回数据resolve(res.data);},fail(err) {//请求失败reject(err)console.log(err);}})})
}// 请求不同的接口const API = {getListData: () => request(GET, `/index/index`),SearchGoodsListApi:() => request(GET,`/search/index`)
};
module.exports = {API
}

在自己需要发请求的页面调用这个api就可以使用了
在.js文件里引入api.js下的API

//引入api.js文件 ,通过$api.xxx( )去调用接口获取数据
const $api = require('../../utils/api').API; Page({/*** 页面的初始数据*/data: {dataList: [ ]},/*** 生命周期函数--监听页面加载*/onLoad: function (options) {// 调用接口列表页数据请求$api.getListData().then(res => {//请求成功console.log(res.data);}).catch(err => {//请求失败})//搜索商品的数据请求$api.SearchGoodsListApi().then(res => {//请求成功console.log(res.data);}).catch(err => {//请求失败})},})

请求成功,返回的数据

上面我所使用的接口真实有效,没有接口的小伙伴可以使用此接口测试,封装的api是否报错

微信小程序封装request请求数据相关推荐

  1. 微信小程序request请求封装;微信小程序封装request请求;uni-app小程序封装request请求;

    本片封装了微信小程序request请求:为别是post get put请求,重点在request.js文件 1.新增四个文件 2.根目录下的utils下的request.js封装uni.request ...

  2. 微信小程序封装request请求,primise队列化,async await做同步处理,缓存token信息

    话不多数直接上代码! 在app.js文件中加入,一般新建的项目都有globalData只需要在里面添加你的信息就行了 globalData: {Ip:'',Header:{ //request 请求头 ...

  3. 微信小程序----封装request以及对接口进行模块化

    微信小程序----封装request以及对接口进行模块化 1. 封装request:http.js export default function request(params) {return ne ...

  4. 【微信小程序提取公共请求数据】

    [微信小程序提取公共请求数据] 在utils下设置一个http.js const url = 'https://api.shop.eduwork.cn'; const request = (path= ...

  5. 微信小程序服务器开小差了,微信小程序wx.request请求封装

    微信小程序 wx.request RequestTask wx.request(Object object)发起 HTTPS 网络请求. 示例代码 wx.request({ url: 'test.ph ...

  6. 微信小程序封装api请求步骤

    小程序发起网络请求 需用到 wx.request() 废话不多说 直接开始封装 1.首先创建一个request文件夹里边创建一个api.js和request.js 2.封装的请求在request.js ...

  7. 微信小程序wx.request请求服务器json数据并渲染到页面

    微信小程序的数据总不能写死吧,肯定是要结合数据库来做数据更新,而小程序数据主要是json数据格式,所以我们可以利用php操作数据库,把数据以json格式数据输出即可.现在给大家讲一下,微信小程序的wx ...

  8. 小程序promise封装post请求_Promise封装微信小程序的Request请求

    回调地狱一向是影响开发和维护的症结所在,无数个success()的嵌套再嵌套,导致代码层级颇深,盘一次逻辑都要费劲千辛万苦,ES6语法中的Promise,便是专为解决JS中异步请求回调的信任问题而存在 ...

  9. 微信小程序网络请求异常怎么办_监控微信小程序wx.request请求失败

    在微信小程序里,与后台服务器交互的主要接口函数是wx.request(),用于发起 HTTPS 网络请求.其重要性不言而喻.然而,却经常遇到请求失败的问题,笔者特意谷歌"wx.request ...

最新文章

  1. Red Hat linux 9 初装配置
  2. 液晶OCM12864,结构体,枚举,指针,规范化和模块化编程
  3. POJ 1091 跳蚤
  4. pre2-flink单机部署与job提交
  5. Verilog HDL 学习笔记3-Latch
  6. mysql和oracle数据库兼容性_oracle数据库兼容mysql的差异写法
  7. python_IDE开发环境使用_建立Python源文件---python工作笔记011
  8. DIOCP开源项目-高效稳定的服务端解决方案(DIOCP + 无锁队列 + ZeroMQ + QWorkers) 出炉了
  9. python兔子编程_少儿编程分享:手把手教你用Python编写兔獾大作战(完)
  10. “盈利为王”运营商财务管理沙盘--徐凌云老师
  11. linux查询hba卡驱动版本,Linux下查看HBA卡的驱动版本和WWPN
  12. 合肥盛荣乒乓球俱乐部学习感悟
  13. 计算机无法打开命令,电脑点击运行cmd打不开怎么办
  14. PS for Mac 破解版下载
  15. js中判断一个对象是否存在
  16. html文件用服务器打开很慢,网页打开太慢?快试试这6招!
  17. java调用oracle存储过程_java调用oracle存储过程详解
  18. web自动化测试--tpshop商城案例
  19. 计算机键盘如何打字课件,键盘和打字指法ppt课件
  20. [HZOI2015]帕秋莉的超级多项式

热门文章

  1. 【linux部署前端项目】
  2. 带有修订的word文档如何在打印的时候不显示修订内容?
  3. android下网关路由设置,爱快路由网关到网关配置open***
  4. html画一个立体苹果,使用ai绘画出卡通2.5D风格立体苹果手机的具体操作步骤
  5. 设置html页面自动跳转以及超链接基本跳转设置
  6. 保存csdn页面自动跳转解决方法
  7. 「音频可视化」 波形频谱和频率直方图
  8. 用这些渠道玩转淘宝内容营销
  9. iphone12发布时间和上市时间
  10. mysql按关键字截取字符串