fly.js快速了解

2018-08-10  本文已影响0人  大乌冬

定义

基于promise的js http网络请求库

特点

  • 支持多种js运行环境 (Node.js,微信小程序、weex、RN、quick App,浏览器)
  • 支持请求/响应拦截器
  • 自动转换JSON数据
  • 切换底层http engine,适配各种运行环境
  • 浏览器支持全局ajax拦截
  • h5页面内嵌到原生app中时,支持讲http请求转发到
    加粗部分没有应用过,后续验证下

安装

npm install flyio

or

<script src="https://unpkg.com/flyio/dist/fly.min.js></script>

使用

  1. 浏览器,node,RN环境
var fly=require('flyio')

2.小程序环境

var Fly=require('flyio/dist/npm/wx');
var fly=new Fly();
  1. 添加请求和响应拦截器
fly.interceptors.request.use((request)=>{
    wx.showNavigationBarLoading();
    let token=wx.getStorageSync('token');
    request.headers["token"]=token;
   
    //登录时加多一个请求头,用于记录分享上下级关系
    if(request.url.indexOf(config.login)>-1){
        request.headers["parent-token"]=token;
    }
    
    return request;
})
fly.interceptors.response.use(
    (response)=>{
    
        return response.data;
    },
    (err)=>{
        showToast('网络异常,请稍后重试')
    }
)

Vue.prototype.$http = fly;

function showToast(msg){
    wx.showToast({
        title:msg,
        icon:'none',
    })
}
  1. 移除拦截器
fly.interceptors.request.use(null);
fly.interceptors.response.use(null,null);

1/100
今天是刻意练习-100天系列的第一天,万事开头难,早上的时候,还完全不知道写什么怎么写,完全是迷茫的,好在今天工作强度不大,一点点磨,拼拼凑凑迈出了第一步,不管如何,也是值得鼓励的,至少这个过程对我是有益的。
keep moving!

上一篇下一篇

猜你喜欢

热点阅读