Appearance
Client 配置
SDK 只保留 client 级默认配置。先创建一个 client,再通过 client.ship.search(...) 这类模块方法发请求。
创建 client
ts
import lsData from '@loongship-kit/data';
const client = lsData.create({
key: 'your-user-key',
timeout: 20000,
mock: false,
headers: {
'X-App-Name': 'demo'
}
});这些默认值只作用于当前 client,不会影响其他 client,也不会写入任何持久化存储。
可配置项
key默认鉴权 keybaseURLAPI 服务地址。不传时默认使用https://api.shipdt.com/DataApiServertimeout默认超时时间,单位毫秒。不传时默认是15000headers默认请求头mock默认是否开启 mock 模式。开启后,该 client 的请求默认不发真实 HTTP,而是直接返回示例数据hooks当前 client 的请求和响应 hooks,见 请求和响应拦截
优先级
key
text
params.key > client keybaseURL / timeout / headers / mock
text
request options > client defaults其中:
client defaults指lsData.create(...)传入的默认值request options指接口第二个参数里的单次请求选项
单次覆盖
ts
await client.ship.search(
{ key: 'override-key', kw: 'COSCO' },
{ timeout: 30000, mock: false }
);这里的覆盖只对这一条请求生效,不会修改 client 本身。
与 hooks 的顺序
如果你同时配置了默认值和 hooks.onRequest,执行顺序是:
text
client defaults -> request options -> onRequest -> final request