api-mock-js
Version:
Promise based AJAX library
111 lines (83 loc) • 2.39 kB
Markdown
# ApiJS
[](https://www.travis-ci.org/qkorbit/Api)
[](https://app.fossa.io/projects/git%2Bgithub.com%2Fqkorbit%2FApi?ref=badge_shield)
[](https://coveralls.io/github/qkorbit/Api)
> Api.js 是一款基于 promise 的 JavaScript(TypeScript)库,它对异步请求进行封装,提供常规的 ajax 请求和前端开发上的数据模拟
[English](/README.md)
## 特性
* 😃 简洁友好的使用方式
* 🐶 提供浏览器端发起 XMLHttpRequests 和 JSONP
* 🦄 前端开发中假数据模拟
* 🚀 轻量高效, <2Kb gziped
* 😛 支持 IE9+
## 快速开始
### 安装
Install with yarn
```bash
$ yarn add api-mock-js
```
or with npm
```bash
$ npm install api-mock-js --save
```
### 使用
#### 0. 引入依赖
```javascript
import Api from 'api-mock-js'
```
#### 1. 发起普通请求
```javascript
Api.require('http://api.foo.com/get/')
```
#### 2. 发起普通请求
```javascript
import Api from 'api-mock-js'
// 全局配置
Api.config({
domain: 'http://your.domain.com/api', // The baseURL
dataType: 'jsonp'
})
// 定义 /edit 接口的假数据
Api.define('/edit', {
input: {
id: 0,
name: '-_-'
},
mock: {
code: 0,
msg: '',
data: {}
}
})
Api.require('/edit', {
id: 123,
name: '--_--'
},{
useMock: true
}).then(res => {
console.log(res)
})
Api.require('/news', {
date: '2017-12-12',
}).then(res => {
console.log(res)
})
// 用 POST 方式请求 /user 接口
Api.require('/user', {
id: 456
},{
methods: 'POST',
dataType: 'json',
header: {
"Content-type": "application/x-www-form-urlencoded"
}
}).then(res => {
console.log(res)
})
```
### Promises
ApiJS 依赖于原生 `ES6 Promise`,要在不支持该语法的浏览器中使用,可以引入 [polyfill](https://github.com/jakearchibald/es6-promise)
## Tip
请大家使用 v0.2.x 及以上版本
## License
[](https://app.fossa.io/projects/git%2Bgithub.com%2Fqkorbit%2FApi)