怎么封装微信小程序http拦截器
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍"怎么封装微信小程序http拦截器"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"怎么封装微信小程序http拦截器"文章能帮助大家解决问题。第一
千家信息网最后更新 2026年11月02日怎么封装微信小程序http拦截器
这篇文章主要介绍"怎么封装微信小程序http拦截器"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"怎么封装微信小程序http拦截器"文章能帮助大家解决问题。
第一步:创建一个request.js文件
第二步:确定http、upload和websocket前缀
第三步:封装wx.request
在请求发出前处理http地址、请求头和参数、在响应后解析返回值并做基本的逻辑判断,重点是使用Promise对象。
第四步:导出模块
第五步:使用request
const Request = require("/utils/request");//导入模块Request.post("/api/xcxWxLogin", { //调用方法 code: res.code, encryptedData: resp.encryptedData, iv: resp.iv, shareId: share.shareId || "", salesmanId: share.salesmanId || "", source: share.source || ""}).then(res => { //成功回调 //todo}).catch(err => {}); //异常回调第六步:拦截器完整代码
const apiHttp = "https://*****.com";const socketHttp = "wss://*****.com/wss";function fun(url, method, data, header) {data = data || {};header = header || {};let sessionId = wx.getStorageSync("UserSessionId");if (sessionId) {if (!header || !header["SESSIONID"]) { header["SESSIONID"] = sessionId;}}wx.showNavigationBarLoading();let promise = new Promise(function(resolve, reject) {wx.request({ url: apiHttp + url, header: header, data: data, method: method, success: function(res) { if (typeof res.data === "object") { if (res.data.status) { if (res.data.status === -200) { wx.showToast({ title: "为确保能向您提供最准确的服务,请退出应用重新授权", icon: "none" }); reject("请重新登录"); } else if (res.data.status === -201) { wx.showToast({ title: res.data.msg, icon: "none" }); setTimeout(function() { wx.navigateTo({ url: "/pages/user/supplement/supplement" }); }, 1000); reject(res.data.msg); } } } resolve(res); }, fail: reject, complete: function() { wx.hideNavigationBarLoading(); }});});return promise;}function upload(url, name, filePath) {let header = {};let sessionId = wx.getStorageSync("UserSessionId"); //从缓存中拿该信息if (sessionId) {if (!header || !header["SESSIONID"]) { header["SESSIONID"] = sessionId; //添加到请求头中}}wx.showNavigationBarLoading();let promise = new Promise(function(resolve, reject) {wx.uploadFile({ url: apiHttp + url, filePath: filePath, name: name, header: header, success: function(res) { resolve(res); }, fail: reject, complete: function() { wx.hideNavigationBarLoading(); }});});return promise;}module.exports = {apiHttp: apiHttp,socketHttp: socketHttp,"get": function(url, data, header) {return fun(url, "GET", data, header);},"post": function(url, data, header) {return fun(url, "POST", data, header);},upload: function(url, name, filePath) {return upload(url, name, filePath);}};关于"怎么封装微信小程序http拦截器"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
拦截器
封装
程序
知识
方法
模块
行业
不同
实用
成功
代码
信息
内容
前处理
前缀
参数
地址
实用性
实际
对象
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广州为想互联网科技有限公司
互联网科技工作委员会
盈实互联网科技
互联网与科技发展
与互联网科技公司
互联网科技英文
互联网科技革命
融势互联网科技
互联网科技logo设计
须眉科技是互联网公司吗
互联网为啥属于高科技
互联网科技公司实习生
互联网5g黑科技有哪些
互联网科技研发水平
互联网行业科技股
阿里互联网科技企业
特约风豹互联网科技为什么扣费
全球科技与互联网公司市值变化
广州智享互联网科技
株洲百竞科技的互联网营销顾问
互联网科技公司
江苏根荣互联网科技
金融科技还是互联网
互联网金融科技平台
互联网女皇 腾讯科技
深圳艾佳互联网科技
群盈汇互联网科技有限公司
福州德业互联网科技
互联网科技自媒体灵感
互联网科技企业文化