iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >微信小程序怎么制作api拦截器
  • 392
分享到

微信小程序怎么制作api拦截器

2023-06-26 08:06:57 392人浏览 安东尼
摘要

这篇“微信小程序怎么制作api拦截器 ”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作api拦截器 ”文章吧

这篇“微信小程序怎么制作api拦截器 ”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作api拦截器 ”文章吧。

安装

npm install wxapp-api-interceptors --save使用mpVue项目
import wxApiInterceptors from 'wxapp-api-interceptors';wxApiInterceptors(); // 必须在调用小程序api之前调用原生小程序项目

下载该项目,解压移动文件夹dist里wxApiInterceptors.js和runtime.js文件到你自己的项目,详见示例。

const wxApiInterceptors = require('./wxApiInterceptors');wxApiInterceptors(); // 必须在调用小程序api之前调用小程序api调用

不必传success、complete和fail参数。

https://assets-cdn.github.com/images/icons/emoji/unicode/26a0.png">⚠️注意:原生小程序项目不支持Promise.finally

函数式异步调用方式:

wx.showLoading({title: '登录中...'})    .then(wx.login)    .then(data => wx.request.post('/login', {data}))    .then(() => wx.showToast({title: '登录成功'}))    .catch(() => wx.showToast({title: '登录失败'}))    .finally(wx.hideLoading);也兼容原生的调用方式(不便维护):
wx.showLoading({    title: '登录中...',    success: () => {        wx.login({            success: (data) => {                wx.request({                    url: '/login',                    data,                    success: () => wx.showToast({title: '登录成功'}),                    fail: () => wx.showToast({title: '登录失败'}),                    complete: wx.hideLoading,                });            },        });    },});自定义拦截器

使用方法及参数:wxApiInterceptors({[api]: {[request](params):params, [response](res):res}})

比如拦截wx.showModal的confirmColor默认值为red,调用成功后并拦截调用成功返回的结果。

wxApiInterceptors({    showModal: {        request(params) {            if (params.confirmColor === undefined) {                params.confirmColor = 'red';            }            return params;        },        response(res) {            res = '调用成功';            return res;        },    }});wx.showModal({title: '测试'})    .then(console.log);// 控制的输出:调用成功默认拦截了request api,封装成了和axiOS差不多的使用方式

调用wx.request[method](url, [config])发送axios化的请求。

默认GET请求

wx.request('Https://test.com/banner')    .then(({data}) => {        console.log(data);    })其他请求方式
wx.request.post('https://test.com', {data: {userName: 'test'}})    .then(({data}) => {        console.log(data);    })当然也可以再继续拦截request api

比如设置request api默认的host:

wxApiInterceptors({    request: {        request(params) {            const host = 'https://test.com'            if (!/^(http|\/\/)/.test(params.url)) {                params.url = host + params.url;            }            return params;        },    },});

甚至可以拦截自己的业务状态码:

wxApiInterceptors({    request: {        response(res) {            const {data: {code}} = res;            // 如果data里的code等于-1就响应为失败            if (code === -1) {                return Promise.reject(res);            }            return res;        },    },});强大的async拦截器

比如调用request api的时候都在header里带上本地储存的token,没有的话从服务器获取:

wxApiInterceptors({    request: {        async request(params) {            if (params.header === undefined) {                params.header = {};            }            let token = wx.getStorageSync('token');            if (!token) {                ({data: token} = await wx.request('/getToken'));                wx.setStorageSync('token', token);            }            params.header.token = token;            return params;        },    },});

以上就是关于“微信小程序怎么制作api拦截器 ”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

--结束END--

本文标题: 微信小程序怎么制作api拦截器

本文链接: https://www.lsjlt.com/news/308149.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序怎么制作api拦截器
    这篇“微信小程序怎么制作api拦截器 ”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作api拦截器 ”文章吧...
    99+
    2023-06-26
  • 微信小程序页面返回操作拦截
    返回操作包括三种情形,右滑手势、安卓物理返回键和调用 navigateBack 接口 微信小程序没有提供类似 onBackPress 监听页面返回的api,在某些特定场景下,业务收到了限制 为了解决这...
    99+
    2023-09-07
    微信小程序 小程序
  • 如何封装微信小程序http拦截器
    这篇文章主要为大家展示了“如何封装微信小程序http拦截器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何封装微信小程序http拦截器”这篇文章吧。前言微信小...
    99+
    2024-04-02
  • 微信小程序怎么制作
    这篇文章主要介绍了微信小程序怎么制作的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序怎么制作文章都会有所收获,下面我们一起来看看吧。微信小程序制作步骤一:设计 小程序制作所涉及到的设计关于页面的排版和美...
    99+
    2023-06-27
  • 微信小程序怎么封装网络请求和拦截器
    这篇文章主要介绍“微信小程序怎么封装网络请求和拦截器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序怎么封装网络请求和拦截器”文章能帮助大家解决问题。1. 前言今天和合作伙伴对接代码的时候,...
    99+
    2023-07-05
  • 微信小程序怎么制作组件
    这篇“微信小程序怎么制作组件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作组件”文章吧。  第一种方式,下...
    99+
    2023-06-26
  • 微信小程序怎么制作自己的程序
    微信小程序制作自己的程序的操作方法:访问微信公众平台,点击右上角“立即注册”。选择注册的帐号类型为“小程序”,按照要求去填写帐号信息,完成注册。利用第三方工具开发及搭建小程序,最后发布小程序即可。...
    99+
    2024-04-02
  • 微信小程序如何制作
    这篇文章主要为大家展示了“微信小程序如何制作”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序如何制作”这篇文章吧。一,善于使用搜索引擎例如搜索引擎。商店都了解SEO和SEM。根据关键字优...
    99+
    2023-06-27
  • 微信小程序怎么制作音乐播放器
    本篇内容介绍了“微信小程序怎么制作音乐播放器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  font color="Black&...
    99+
    2023-06-26
  • 不懂代码怎么制作微信小程序
    这篇文章将为大家详细讲解有关不懂代码怎么制作微信小程序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先自己制作小程序:第一步,注册小程序,如果有公众号且认证过了的,直接在公众号后台,点击小程序,注册小程...
    99+
    2023-06-27
  • 微信小程序中Audio API怎么用
    这篇文章将为大家详细讲解有关微信小程序中Audio API怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。注意:1.2.0 版本开始,本接口不再维护。建议使用能力更强的 wx.getBackgroun...
    99+
    2023-06-26
  • 微信小程序封装网络请求和拦截器实战步骤
    目录1. 前言2. 思路2.1 封装网络请求2.2 统一处理状态码2.3 封装拦截器2.4 不同请求方式兼容2.5 全局存储用户登录信息2.6 完整代码3. 使用示例4. 注意事项5...
    99+
    2023-05-13
    小程序封装网络请求和拦截器 微信小程序封装网络请求 微信小程序封装拦截器
  • 微信小程序个人中心页怎么制作
    这篇“微信小程序个人中心页怎么制作”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序个人中心页怎么制作”文章吧。先进行...
    99+
    2023-06-26
  • 微信小程序API设备怎么绑定
    这篇文章主要介绍了微信小程序API设备怎么绑定的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序API设备怎么绑定文章都会有所收获,下面我们一起来看看吧。微信小程序API设备概览系统信息&mdas...
    99+
    2023-06-26
  • 微信域名拦截检测API接口是什么
    这篇文章主要介绍了微信域名拦截检测API接口是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。现如今微信对第三方推广链接的检测是越来越严格了,分享链接在微信中转发经常会被拦...
    99+
    2023-06-04
  • 微信小程序API怎么获取位置
    今天小编给大家分享一下微信小程序API怎么获取位置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。wx.getLocation...
    99+
    2023-06-26
  • 制作自己的微信小程序要怎么做?
    现在不少人都想要制作自己的微信小程序,不管是企业还是商家都在咨询相关的问题。那么制作自己的微信小程序要怎么做?流程和费用分别又是怎么样的呢?下面个大家一起来看看。 步骤一:要有自己的小程序账号 首先我们需要有自己的小程序账号,这一步没有涉及...
    99+
    2023-09-17
    微信小程序 小程序
  • 微信小程序 | 小程序系统API调用
    🖥️ 微信小程序专栏:小程序系统API调用 🧑‍💼 个人简介:一个不甘平庸的平凡人🍬 ✨ 个人主页:CoderHing的个人主页 🍀 格言: ☀️ 路漫...
    99+
    2023-08-31
    小程序 微信小程序 前端 微信 前端框架
  • 微信小程序api有哪些
    这篇文章主要介绍微信小程序api有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!  API  框架提供丰富的微信原生API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能等。  说明:  wx....
    99+
    2023-06-26
  • node.js怎么制作登录拦截器
    这篇文章主要介绍“node.js怎么制作登录拦截器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“node.js怎么制作登录拦截器”文章能帮助大家解决问题。拦截器在web开发中随处可见,比如站点的管理...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作