更新记录

2.2.3(2021-01-27)

  • 新增common公共请求头配置
  • 调整请求头优先级
  • 调整TS请求方法执行体的接口名
  • 优化合并请求配置

2.2.2(2021-01-13)

  • 新增可自定义响应状态码返回拦截状态validateStatus
  • 优化统一中断请求响应事件
  • 优化分离请求对象方法
  • 修复非微信小程序端requestTask执行HeadersReceived事件报错
查看更多

✨ 特性

  • 支持 Promise API
  • 支持 Typescript 开发
  • 拦截请求和响应
  • 自定义配置请求实例
  • 多种 Method 方法请求
  • 支持 RequestTask 操作

🍟 文档

uniajax.ponjs.com

🥗 安装

插件市场

  • 在插件市场右上角选择使用HBuilder X 导入插件或者下载插件ZIP
  • 如果您的项目是由HBuilder X创建,将下载解压后的uni-ajax文件夹,放到项目根目录。
  • 如果您的项目是由vue-cli模式创建的,将下载解压后的uni-ajax文件夹放到项目的src文件夹中。

NPM

# 如果您的项目是HBuilder X创建的,根目录又没有package.json文件的话,请先执行如下命令:
# npm init -y

# 安装
npm install uni-ajax

# 更新
npm update uni-ajax

🥐 实例

新建ajax.js文件(文件名可自定义)用于处理拦截器、接口根地址、默认配置等,详细配置请查看文档

// ajax.js

import ajax from 'uni-ajax'                                 // 引入 uni-ajax 模块

const _ajax = ajax.create(config)                           // 创建请求实例 可配置默认项

_ajax.interceptors.request.use(onFulfilled, onRejected)     // 注册请求拦截器
_ajax.interceptors.response.use(onFulfilled, onRejected)    // 注册响应拦截器

export default _ajax                                        // 导出创建后的实例

然后在main.js引入该ajax.js

// main.js

import ajax from './utils/ajax'    // 路径需根据项目实际情况
Vue.prototype.$ajax = ajax         // 挂载在 Vue 原型链上(通过 this.$ajax 调用)

🥪 使用

请求方法

// 常规方法
ajax()

// 请求方法别名
ajax.get()
ajax.post()
ajax.put()
ajax.delete()

RequestTask

const request = ajax()                  // 请求方法每项皆可

request.abort()                         // 中断请求任务
request.onHeadersReceived(callback)     // 监听 HTTP Response Header 事件
request.offHeadersReceived(callback)    // 取消监听 HTTP Response Header 事件

其他属性

ajax.baseURL    // 获取配置的接口根地址 baseURL
ajax.origin     // 根据配置的接口根地址获取源地址 origin

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问