如何封装⼩程序请求

本文档详细介绍了如何在小程序中封装wx.request方法,包括POST、GET等常见HTTP请求,并展示了如何在组件中调用这些封装好的请求进行数据交互。通过创建api.js文件并导出请求方法,可以方便地在小程序各个模块中复用请求逻辑。

如何封装⼩程序请求

  • 封装 wx.request 请求传递需要的参数( url , data , method , success 成功回调 , fail 失败回调 ) , 封装常⽤⽅法 POST , GET , DELETE , PUT … 最后导出这些⽅法
  • 然后新建⼀个 api.js ⽂件,导⼊封装好的⽅法,然后调取相应的⽅法,传递数据。
    wx.request 封装
var app = getApp(); //获取⼩程序全局唯⼀app实例
var host = '******************'; //接⼝地址
//POST请求
function post(url, data, success,fail) {
 request(url, postData, "POST", doSuccess, doFail);
}
//GET请求
function get(url, data, success, fail) {
 request(url, postData, "GET", doSuccess, doFail);
}
function request(url, data, method, success, fail) {
 wx.showLoading({
 title: "正在加载中...",
 })
 wx.request({
 url: host + url, //请求地址
 method: method, //请求⽅法
 header: { //请求头
 "Content-Type": "application/json;charset=UTF-8"
 },
 data: data, //请求参数
 dataType: 'json', //返回数据格式
 responseType: 'text', //响应的数据类型
 success: function(res) {
 wx.hideLoading();
 //成功执⾏⽅法,参数值为res.data,直接将返回的数据传⼊
 success(res.data);
 },
 fail: function() {
 //失败执⾏⽅法
 fail();
 },
 })
}
module.exports = {
 postRequest: post,
 getRequest: get, }

组件使⽤ 封装好的请求


var http = require('../../utils/request.js'); //相对路径
var params = {//请求参数
 id:this.data.userId
}
http.postRequest("user/delUser", params, function(res) {
 console.log("修改成功!");
 
}, function(res) {
 console.log("修改失败!!!")
})


项⽬概述 项⽬名称: 智慧房管程序 使⽤场景: ⾃⽤租房管理,约 200 户 ⽬标: 通过程序管理房屋、租客、租⾦、智能⽔电表、智能⻔锁; 租⾦到期后,超过 N 天未⽀付,可⾃动下发“断电”指令; ⽀持电⼦租房合同查看与归档; 借助 Home Assistant 做⾃动化联动(如消息通知、场景联动)。 ⼆、系统⻆⾊ 1. 房东 / 管理员 在程序⾥维护房源、房间、⽔电表、⻔锁、租客信息 录⼊ / 修改租⾦、合同、押⾦、租期 查看各房间⽔电剩余电量、⽤量统计 ⼀键远程断电 / 合闸、开锁 / 锁⻔(紧急情况) 2. 租客 3. 在程序查看⾃⼰的租⾦账单、缴费记录 查看电⼦租房合同 查看当前⽔电⽤量、余额 若有权限,可发起续租申请 系统(⾃动任务 / Home Assistant ⾃动化) 定期检查租⾦是否到期 租⾦逾期超过 N 天后,⾃动触发“断电”接⼝ 收到电表 / 设备的上报消息,更新状态、发通知 三、整体架构 前端: 微信程序(或其他程序) 后端服务: ⾃建 Web 服务(REST API),负责业务逻辑 Home Assistant: 作为⾃动化中枢,可通过: Webhook 或 REST 调后端 API 接收后端推送的状态 设备侧: 智能电表:使⽤现有远程预付费电表 HTTP 接⼝对接 智能⻔锁:假设提供 HTTP/HTTPS 或 MQTT 接⼝,本项⽬⽂档预留 HTTP 控制接⼝ 数据库: 存储房屋、租客、合同、账单、⽔电表 SN、⻔锁 ID 等信息 四、功能模块说明 4.1 房源与租客管理 房间列表:房号、楼栋、⾯积、绑定电表 SN、绑定⻔锁 ID 租客信息:姓名、电话、身份证、⼊住时间、退房时间 电⼦合同:合同⽂件地址、合同签署⽇期、租期、租⾦、押⾦等 4.2 账单与⽀付 每个房间对应租⾦计划:⽉租⾦额、缴费周期(按⽉)、租⾦到期⽇ 系统⾃动⽣成账单:状态(未⽀付 / 已⽀付 / 逾期) ⽀持⼿⼯录⼊“已⽀付”(后续可接⼊微信⽀付) 4.3 ⽔电表管理 绑定电表 SN 到房间 查询电表状态:剩余电量、总⽤电量、开关状态 充值电量(预付费):输⼊电量值后调⽤充值接⼝ 强制断电 / 恢复供电(强制拉闸 / 解除强制) 4.4 智能⻔锁管理 绑定⻔锁 ID 到房间 远程开锁 / 关锁(通过⻔锁⼚商提供的 HTTP API) 查询⻔锁在线状态(可选) 4.5 租⾦到期⾃动断电逻辑 每天定时任务(由后端或 Home Assistant 调⽤): 1. 遍历所有房间,查找“租⾦到期 + N 天仍未⽀付”的账单 2. 对这些房间,根据绑定 SN 调⽤电表“强制拉闸”接⼝ 3. 记录操作⽇志,并给房东(可选:租客)发消息提
最新发布
12-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值