ds-net
快速使用
install
$ npm install --save @irim/ds-core @irim/ds-net
import { Core } from '@irim/ds-core';
import { Net } from '@irim/ds-net';
const ds = new Core();
ds.register('net', Net);
// 请求数据
ds.net.request('/api/todo.list', {
type: 'jsonp',
}).then(response => {
console.log('>>>', response);
});
// 连接 socket
await ds.net.initSocket('wss://echo.websocket.org');
ds.net.socket.sendMessage({ content: 'hello world' });
ds.net.socket.onMessage(data => {
console.log('on message', data);
});
进阶使用
- 初始化时指定数据能力
// 这里的参数也可以放到 ds.setConfig({ net: ... }) 或初始化 ds 中,详见 DsCore 文档
ds.register('net', Net, {
abilities: ['ajax', 'upload'],
});
// 也可以在指定能力时,指定初始化的参数,如:
ds.register('net', Net, {
abilities: ['ajax',
['jsonp', { timeout: 5000 }]
],
});
ds.net.request('/api.aaa.bbb', {
type: 'jsonp',
data: { id: 1001 },
});
- 初始化时指定数据处理中间件
import { middlewares } from '@irim/ds-net';
ds.setConfig({ net: {
middlewares: [
middlewares.printLogger,
middlewares.delay,
async ctx => {
// do something...
await ctx.next();
// do something...
}
],
}});
术语规范
参数名规范
-
api
定义接口名,url
不再使用 -
search
用于拼接在请求的 URL 中,即 GET 请求 -
payload
用于传 POST|PUT 请求的数据传输 -
data
用于通用的传递数据或请求参数,query
、params
不再使用(可在中间件作兼容) -
options
方法的通用参数名,settings
、props
不再使用 -
response
用于定义服务器响应后的数据 -
message
用于定义服务器响应的错误消息
LICENSE
BSD-3-Clause License