Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

ahlaaa/wx-promise-request

Repository files navigation

wx-promise-request

wx-promise-request 是微信小程序 wx.request 方法的不支持 Promise 和并发数问题的解决方案。如果只需要解决并发数问题,可以使用我的 wx-queue-request

解决问题

  • 支持 Promise (使用 es6-promise 库)。
  • 管理请求队列,解决 request 最大并发数超过 10 会报错的问题。

下载

可以使用 npm 下载

$ npm i wx-promise-request

也可以直接右键保存 index.js 文件。

使用

import {request} from './wx-promise-request';
request({
 url: 'test.php',
 data: {
 x: '',
 y: '',
 },
 header: {
 'content-type': 'application/json',
 },
})
.then(res => console.log(res))
.catch(error => console.error(error))

API

setConfig(object)

可以通过 setConfig 配置 wx-promise-request 的行为。

属性 说明 类型 默认值
request 发起网络请求的函数 Function wx.request
Promise Promise 函数 Function es6-promise
concurrency 最大并发数 number 10
import {request, setConfig} from './wx-promise-request';
import qcloud from './vendor/qcloud-weapp-client-sdk/index';
import Promise from 'bluebird';
// 根据自身需求,来定制 request
setConfig({
 request: qcloud.request, // 使用 qcloud 提供的请求方法
 Promise, // 使用 bluebird 作为 Promise
 concurrency: 5, // 限制最大并发数为 5
})
request({
 url: 'test.php',
})
.then(res => console.log(res))
.catch(error => console.log(error));

License

MIT

About

解决微信小程序 wx.request 请求的并发数限制、不支持异步问题

Resources

License

Stars

Watchers

Forks

Packages

Contributors

Languages

  • JavaScript 100.0%

AltStyle によって変換されたページ (->オリジナル) /