地点:https://github.com/afishhhhh/weapp.request
weapp.request 是基于 wx.request 举行扩大的一个收集组件,相较于 wx.request 有更简朴的挪用体式格局。
此组件现在重要供应两个功用,离别的 Promise 以及缓存掌握,运用 Promise 以后能让本来 wx.request 的挪用变得越发简约,避免了回调函数,关于服务器返回的数据能够依据项目需要在当地举行缓存。
迎接列位 JS 大佬提出革新看法。
Features
- Promise API
- 缓存掌握
Install
引荐运用 npm 装置
npm install weapp.request -S
Quick Start
引入 weapp.request
const request = require('weapp.request')
发送一个 GET 要求
request('https://api.github.com').then(onFulfilled).catch(onRejected)
由于一切的
request
挪用都邑返回一个Promise
,所以能够运用then
对要求效果举行进一步处置惩罚,用catch
来捕捉内部抛出的毛病。发送一个 GET 要求,并写入缓存
request('https://api.github.com', {}, { cache: true })
发送一个 POST 要求
request.post('https://api.github.com', { user: 'afishhhhh' })
除了 GET 要求之外,一切其他的 method 都要以
request.method
的情势举行挪用。依据微信官方文档的申明,以上 POST 要领且
Content-Type
默以为application/json
,会对数据举行 JSON 序列化。假如需要以 query string 的情势将数据发送给服务器,能够采用以下挪用要领,不需要显现的将
Content-Type
写为application/x-www-form-urlencoded
:request.post('https://api.github.com', { form: { user: 'afishhhhh' } })
全局设置
设置选项 范例 申明 必填 默认值 baseUrl String/Undefined
基本要求途径 否 cacheMaxAge Number/Undefined
缓存有效期,时候单元为秒 否 1800 validStatusCode Function/Undefined
status code 正当区间,该函数接收一个参数,并返回一个 Boolean
否 code => code >= 200 && code < 300
request.config({ baseUrl: 'https://api.github.com' })
APIs
request(url, params, options)
提议一个 GET 要求。
params
:要求参数,范例为 Object
,非必填。
options
:设置项,范例为 Object
,非必填,能够有以下属性值:
属性 | 范例 | 必填 | 默认值 | 申明 |
---|---|---|---|---|
cache | Boolean/Undefined | 否 | undefined | undefined 示意从服务器猎取最新数据,不写入缓存;true 示意优先从缓存中猎取数据,假如缓存中不存在该数据或许缓存已失效,则从服务器猎取数据,并写入缓存;false 示意优先从服务器猎取数据,并将数据写入缓存 |
header | 同微信官方文档 | |||
dataType | 同微信官方文档 | |||
responseType | 同微信官方文档 |
request.method(url, params, options)
method
能够是 get
,post
等等。
request.config(options)
options
:设置项,范例为 Object
。