微信小程序中如何使用flyio封裝網絡請求-創新互聯

Flyio簡介

創新互聯公司是一家專業提供甘孜州企業網站建設,專注與成都網站建設、成都網站設計、HTML5建站、小程序制作等業務。10年已為甘孜州眾多企業、政府機構等服務。創新互聯專業網站建設公司優惠進行中。

Fly.js 通過在不同 JavaScript 運行時通過在底層切換不同的 Http Engine來實現多環境支持,但同時對用戶層提供統一、標準的Promise API。不僅如此,Fly.js還支持請求/響應攔截器、自動轉化JSON、請求轉發等功能,詳情請參考:https://github.com/wendux/fly 。

下面我們看看在微信小程序、mpvue中和中如何使用fly.

Flyio 官方地址

文檔

github地址

Flyio的一些特點

fly.js 是一個基于 promise 的,輕量且強大的Javascript http 網絡庫,它有如下特點:

  • 提供統一的 Promise API。
  • 瀏覽器環境下,輕量且非常輕量 。
  • 支持多種JavaScript 運行環境
  • 支持請求/響應攔截器。
  • 自動轉換 JSON 數據。
  • 支持切換底層 Http Engine,可輕松適配各種運行環境。
  • 瀏覽器端支持全局Ajax攔截 。
  • H5頁面內嵌到原生 APP 中時,支持將 http 請求轉發到 Native。支持直接請求圖片。

在小程序中使用flyio請求,封裝代碼如下

一、src下新建utils/request.js文件

var Fly=require("flyio/dist/npm/wx") 
import { getCache } from '../utils'
const request = new Fly()
// 全局加載提示 - 設定時間
let ltime = 0;

function closeLoading(param) {
  ltime--
 }
request.interceptors.request.use((request) => {
  // 全局加載提示 - 展示提示
  // wx.showNavigationBarLoading() 
  ltime++
  let dataSource = getCache("dataSource")
  request.headers = {
    "Content-Type": "application/x-www-form-urlencoded",
    "source": "miniApp",
    "dataSource": dataSource ? dataSource : ''
  }
  // 沒用到
  if (request.url.indexOf('getReviewInfo') != -1) {
    closeLoading()
    return request
  }
  // 登錄
  console.log('這是token');
  console.log();
  let type = '';
  if(request.url.indexOf("wxLogin") != -1) {
    type = request.body.loginType;
  }
  console.log(getCache("token"));
  console.log('這是token');
  if (request.url.indexOf("wxLogin") == -1 || type == 'WORKBENCH') {
    // let storeId = getCache("storeId");
    let storeCode = getCache("storeCode");
    let inviter = getCache("inviter");
    let token = getCache("token");
    request.headers = {
      "Content-Type": "application/x-www-form-urlencoded",
      "source": "miniApp",
      "token": token,
      "storeCode": storeCode,
      "inviter": inviter
    }
    console.log('打印request');
    console.log(request);
    console.log('打印request');
    let dataSource = getCache("dataSource")
    if (dataSource) {
      request.headers['dataSource'] = dataSource
    }
  }
  return request
})
request.interceptors.response.use((response, promise) => {
     closeLoading()
    // wx.hideNavigationBarLoading()
    // 微信運維統計
    if (response.status) {
      wx.reportMonitor('0', +(response.status))
    }
    if (response.headers.date) {
      let time = new Date().getTime() - new Date(response.headers.date).getTime()
      wx.reportMonitor('1', +(time))
    }
    // 錯誤提示
    if (response.status != 200) {
      wx.showToast({
        title: '出錯啦!請稍后再試試哦~',
        icon: 'none',
        duration: 2000
      })
    }
    return promise.resolve(response.data)
  },
  (err, promise) => {
    wx.hideNavigationBarLoading()
    return promise.resolve()
  }
)
export default request

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享標題:微信小程序中如何使用flyio封裝網絡請求-創新互聯
URL分享:http://m.kartarina.com/article16/ccjodg.html

成都網站建設公司_創新互聯,為您提供小程序開發外貿網站建設網站維護軟件開發定制開發網站設計

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

微信小程序開發
主站蜘蛛池模板: 麻豆精品无码国产在线果冻| 国产av激情无码久久| 67194成是人免费无码| 无码精油按摩潮喷在播放| 久久久久久亚洲精品无码| 久久久久无码国产精品不卡| 无码人妻少妇久久中文字幕蜜桃| 亚洲av无码专区在线观看下载| 内射人妻少妇无码一本一道| 无码人妻一区二区三区免费手机| 中文无码vs无码人妻| 九九无码人妻一区二区三区| 人妻丝袜中文无码av影音先锋专区 | 97久久精品无码一区二区| 精品人妻中文无码AV在线| 99国产精品无码| 亚洲av日韩av无码| 亚洲人成无码久久电影网站| 人妻丰满熟AV无码区HD| 无码AV中文字幕久久专区| 在线观看免费无码视频| V一区无码内射国产| 日韩AV片无码一区二区不卡| 特级毛片内射www无码| 无码人妻精品一区二区三区蜜桃| 亚洲韩国精品无码一区二区三区| 在线观看无码的免费网站| 色欲AV永久无码精品无码| 久久久久av无码免费网| 精品无码AV一区二区三区不卡| 亚洲不卡中文字幕无码| 亚洲V无码一区二区三区四区观看 亚洲爆乳精品无码一区二区三区 亚洲爆乳无码一区二区三区 | 中文字幕精品无码一区二区 | 亚洲熟妇无码八V在线播放| 亚洲国产精品无码一线岛国| 亚洲午夜无码久久久久| 丝袜无码一区二区三区| 国产精品无码专区| 少妇无码一区二区三区| 精品人妻无码区在线视频| 日韩av无码国产精品|