uni-app中uni.addInterceptor直接打开不执行

uni-app中uni.addInterceptor直接打开不执行

2 回复

是说通过在地址栏输入url回车,没有触发 uni. addInterceptor 拦截器吗? 如果是的话,是因为它只拦截uni.xxx 的api,而上述操作并不属于调用 api 的方式 PS:uni.addInterceptor 并不会拦截首页

更多关于uni-app中uni.addInterceptor直接打开不执行的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中,uni.addInterceptor 的作用是拦截全局 API 调用(如 uni.requestuni.navigateTo 等),但拦截器不会自动“执行”自己,它只是注册了一个钩子函数。你遇到的“直接打开不执行”通常是因为:

  1. 未在拦截器内调用 invoke
    拦截器回调函数必须主动调用 invoke 才能放行原始 API 调用。如果不调用,API 永远不会实际执行,所以你感觉什么都没发生。

    uni.addInterceptor('request', {
      invoke(args) {
        console.log('拦截到了', args)
        return args // 必须返回 args 或修改后的 args
      }
    })
回到顶部