微信小程序> 关于微信小程序的fly交互以及fly拦截器

关于微信小程序的fly交互以及fly拦截器

浏览量:1692 时间: 来源:草莓不爱吃白菜

当我们在做微信小程序端的交互的时候,发现jquey、axios这些都无法在小程序中使用,因为小程序中js的运行环境与普通浏览器的运行环境不同,页面的脚本逻辑是在JsCore中运行的,而JsCore中没有xmlhttpRequest对象,所以无法使用它们,同时JsCore无法提供window对象,这也是我们在小程序中无法使用window对象的原因,在这时候我们的主角fly大显身手???

fly是一种可以在微信小程序运行的交互方式,提供统一的 Promise API,轻量且非常轻量,支持请求/响应拦截器,小程序用法:

首先,先使用  npm install flyio,安装fly;

后面在小程序中引入:

var Fly=require("flyio/dist/npm/wx") 

var fly=new Fly

1.get请求

fly.get('/user?id=133')

  .then(function (response) {

    console.log(response);

  })

  .catch(function (error) {

    console.log(error);

  });

 

2.post请求

fly.post('/user', {

    name: 'Doris',

    age: 24

    phone:"18513222525"

  })

  .then(function (response) {

    console.log(response);

  })

  .catch(function (error) {

    console.log(error);

  });

 

3.拦截器

支持两种。一种是请求拦截器,在请求之前做一些预处理;一种是响应拦截器,在响应获取数据之后做一些处理。

 

请求拦截器:

fly.interceptors.request.use((request)={

    //给所有请求添加自定义header

    request.headers["X-Tag"]="flyio";

  //打印出请求体

  console.log(request.body)  

    //可以显式返回request, 也可以不返回,没有返回值时拦截器中默认返回request

    return request;

})

 

响应拦截器:

//添加响应拦截器,响应拦截器会在then/catch处理之前执行

fly.interceptors.response.use(

    (response) = {

        //只将请求结果的data字段返回

        return response.data

    },

    (err) = {

        //发生网络错误后会走到这里

        //return Promise.resolve("ssss")

    }

)

相应的学习链接参考

fly官方实例参考一

fly官方实例参考二

 

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎