0.1.0 • Published 6 years ago

wx-superrequest v0.1.0

Weekly downloads
4
License
MIT
Repository
github
Last release
6 years ago

wx-superrequest

Build Status Coverage Downloads Downloads npm version dependencies dev dependencies License

微信小程序 wx.request 增强。

  • 支持 HTTP Etag
  • 请求客户端缓存
  • 支持 Promise
  • ...

Getting Started

Install it via npm:

npm install wx-superrequest

And include in your project:

import * as superrequest from 'wx-superrequest';

Usage

handler

offline-cookbook

import {handler} from "wx-superrequest";

class CustomHandler extends handler.Handler {
    handle(request) {
        return this.fetch(request).then((response) => {
            console.log(request);
        })
    }
}

const handlers = {
  networkOnly: new handler.NetworkOnly(),
  networkFirst: new handler.NetworkFirst(),
  cacheOnly: new handler.CacheOnly(),
  cacheFirst: new handler.CacheFirst(),
  staleWhileRevalidate: new handler.StaleWhileRevalidate(),
  custom: new CustomHandler(),
};

router

import {router} from "wx-superrequest";

const localRegExpRoute = new router.RegExpRoute({
  regExp: /\.json$/,
  middlewares: [],
  handler: (request) => {
    console.log('Routed through the /\.json$/ handler.');
    return this.fetch(request);
  },
});

Agent

import {Agent} from "wx-superrequest";

const agent = new Agent();
agent.registerRoutes([localRegExpRoute])

agent.request({
    url: 'test.php',
    data: {
        x: '' ,
        y: ''
    },
    header: {
        'content-type': 'application/json'
    },
});

inject

覆盖 wx.request, 方便适配已有项目

import {inject} from "wx-superrequest";

inject().registerRoutes(routers);

wx.request()

License

MIT