微信原生小程序封装网络请求wx.request

  1. 安装
npm install mina-request
  1. 构建

安装完成后需要在微信开发中工具中进行 npm 构建,
点击 工具 > 构建 npm

  1. 新建 http.js 文件
import WxRequest from 'mina-request'
// 对 WxRequest 进行实例化
const instance = new WxRequest({baseUrl: '你的请求根路径',timeout: 15000
})// 配置请求拦截器
instance.interceptors.request = (config) => {// 判断是否有访问令牌 token // 如果有,需要在 header 携带 token 参数const token = getStorage('token')if(token){config.header['token'] = token}return config
}// 配置响应拦截器
instance.interceptors.response = async (response) => {// 解构出需要的数据,简化数据const { isSuccess, data }  =  response// 是否响应成功if(!isSuccess) {// 响应数据失败处理wx.showToast({title: '网络异常请重试!',icon: "error",})return response}// 判断响应状态码switch (data.code) {// 200 成功case 200:return data// 208 没有 token,或者 token 失效,重新登录case 208:const res = await wx.modal({content: '身份失效,请重新登录!',showCancel: false})if(res){// 清除本地 token 或 本地存储数据clearStorage()// 跳转登录页面wx.navigateTo({url: '/pages/login/login',})}return Promise.reject(response)default:wx.toast({title: '出现异常,请重试!'})return Promise.reject(response)}}export default instance
  1. 使用
import instance from '../../utils/http'page({async getInfo(){const res = await instance.get('您的请求地址')console.log(res)}
})

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/9887.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解线程的两阶段终止模式:确保线程安全退出

序言 在多线程编程中,线程的安全退出是一个重要的问题。在实际应用中,我们经常需要确保线程在退出时能够完成必要的清理工作,同时避免因资源泄漏或状态不一致而导致的问题。线程的两阶段终止模式是一种解决这个问题的有效方法。本文将深入探…

React - sass配置

1. idea下载Easy Sass插件: 2. 启用后,我们写的scss文件不能直引用,所以还要下载sass依赖: (推荐使用.scss,因为与原生.css写法接近,.sass格式更严格) // 下载sass依赖 npm install sass sass-loader --s…

目标检测算法YOLOv7简介

YOLOv7由Chien-Yao Wang等人于2022年提出,论文名为:《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors》,论文见:https://arxiv.org/pdf/2207.02696 ,项目网页&#xff…

Go语言系统学习笔记(三):杂项篇

1. 写在前面 公司的新业务开发需要用到go语言,虽然之前没接触过这门语言,但在大模型的帮助下,边看项目边写代码也能进行go的项目开发,不过,写了一段时间代码之后,总感觉对go语言本身,我的知识体…

【Linux】从零开始认识动静态库 - 静态库

送给大家一句话: 永不言弃,就是我的魔法! ——阿斯塔《黑色四叶草》 ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ଘ(੭ˊ꒳​ˋ)੭✧ 从零…

C语言算法之队列快速入门教程

队列结构 queue.h #ifndef ZDPC_ALGORITHM_DEV_QUEUE_H #define ZDPC_ALGORITHM_DEV_QUEUE_H// 队列 typedef struct queue {int *arr; // 容器int cap; // 容量int size; // 元素个数int front; // 队首,用于出队int tail // 队尾,用于入队 } Queue;#…

Linux虚拟机运行“yum install gcc-c++”报错“Loading mirror speeds from cached hostfile”

目录 一、在Linux上安装Redis时,在终端执行命令“yum install gcc-c”时,报错: 二、然后发现linux的网络不通,什么网站都访问不了 三、连上网后,再变换yum源 四、重新运行yum install gcc 一、在Linux上安装Redis时…

Java中55种锁,高级面试题,最新面试题

Java中乐观锁在实际应用中如何解决并发问题? 乐观锁通过假设并发冲突发生概率较低来解决并发问题,主要通过数据版本控制实现。在更新数据前,会检查数据版本是否发生变化,只有在数据版本未变时才允许更新,这样可以避免…

SIUI便携式B超机维修Apogee 1000兽医超声波检查仪宠物医疗彩色多普勒深圳捷达工控维修

带微凸探头的 Siui Apogee 1000 Lite Siui 的最新版本提供了 Apogee 2300 的经济高效、高度便携的替代方案。 非常适合: 小动物兽医实践侧重于主要腹部、甲状腺和小部位的高分辨率成像。 流动兽医。 兽医进行心脏筛查,而不是进行全面超声心动图检查&am…

nginx_01

1.安装 yum install epel-release -y # 安装yum的扩展包 yum install nginx -y systemctl start nginx.service #启动nginx systemctl enable nginx.service # netstat -lntup # 查看端口占用情况 # 可以看到nginx默认占用了80端口 2.nginx配置 # 注意配置文件的语法格式…

haproxy配置安装,实现web服务器负载均衡

一、源码编译安装haproxy 2.x,配置服务启动脚本 1. 下载Haproxy源码包: wget -c https://repo.huaweicloud.com/haproxy/2.4/src/haproxy-2.4.8.tar.gz 2. 下载源码编译工具: yum install -y gcc gcc-c make 3. 下载Haproxy依赖包lua并编…

万物生长大会 | 创邻科技再登杭州准独角兽榜单

近日,由民建中央、中国科协指导,民建浙江省委会、中国投资发展促进会联合办的第八届万物生长大会在杭州举办。 在这场创新创业领域一年一度的盛会上,杭州市创业投资协会联合微链共同发布《2024杭州独角兽&准独角兽企业榜单》。榜单显示&…

什么是股指期货风险度?

期货风险度就像是你账户的“健康指标”,它告诉我们你用了多少资金来持有期货合约,以及你账户里还剩下多少“备用金”。风险度越高,意味着你的“备用金”越少,如果市场突然变化,你可能需要迅速补充资金。 股指期货风险…

Flink Stream API实践

目录 Flink程序的基本构成 获得执行环境(environment) 加载/初始化数据(source) 基于文件 基于socket 基于集合 自定义 转换操作(transformation) 基本转换 物理分区 任务链和资源组 名称和描述…

小红书搞钱美学课-6.0升级版,账号搭建/爆款创作/工具实战/账号变现篇

让我们用视觉撬动流量 课程体系 334253课程权益(5周服务期) 3节账号运营基础课3节自媒体笔记创作课。4节封面设计实操课2次实操加餐分享5次作业指导(一对一)3次答疑直播 课程大纲 一、账号搭建篇 变现模板、精准定位 二、爆款创作篇爆款选题、首图、文案与脚本、快速涨粉…

redis入门学习

一、基础架构 一、应用场景 1、缓存:将后端数据库的热数据缓存到redis中,然后直接从内存中读取数据,提高响应速度。 2、消息队列 3、排行榜,一般用于游戏行业 二、基础结构 1、数据结构 sring(字符串&#xff09…

【计算机毕业设计】springboot工资管理系统

人类现已迈入二十一世纪,科学技术日新月异,经济、资讯等各方面都有了非常大的进步,尤其是资讯与 网络技术的飞速发展,对政治、经济、军事、文化等各方面都有了极大的影响。 利用电脑网络的这些便利,发展一套工资管理系…

权力集中,效率提升,中心化模式的优势与挑战

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:权力集中…

IO 5.10

在一个进程中,创建一个子线程。 主线程负责:向文件中写入数据 子线程负责:从文件中读取数据 要求使用线程的同步逻辑,保证一定在主线程向文件中写入数据成功之后,子线程才开始运行,去读取文件中的数据#incl…

第Ⅷ章-Ⅱ 组合式API使用

第Ⅷ章-Ⅱ 组合式API使用 provide与inject的使用vue 生命周期的用法编程式路由的使用vuex的使用获取DOM的使用setup语法糖setup语法糖的基本结构响应数据的使用其它语法的使用引入组件的使用 父组件传值的使用defineProps 父传子defineEmits 子传父 provide与inject的使用 pro…