Skip to content

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 默认鉴权 key
  • baseURL API 服务地址。不传时默认使用 https://api.shipdt.com/DataApiServer
  • timeout 默认超时时间,单位毫秒。不传时默认是 15000
  • headers 默认请求头
  • mock 默认是否开启 mock 模式。开启后,该 client 的请求默认不发真实 HTTP,而是直接返回示例数据
  • hooks 当前 client 的请求和响应 hooks,见 请求和响应拦截

优先级

key

text
params.key > client key

baseURL / timeout / headers / mock

text
request options > client defaults

其中:

  • client defaultslsData.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