Skip to content

请求选项与原生返回

每一个接口调用的第二个参数(options)都允许你覆盖单次请求行为。当前支持:

  • signal
  • timeout
  • headers
  • mock
  • raw

单次覆盖 timeout 和 headers

如果实例默认超时是 15 秒,但某个请求需要放宽到 30 秒,可以这样覆盖:

typescript
const response = await client.area.list(
  {},
  {
    timeout: 30000,
    headers: { 'X-Custom-Flag': '1' }
  }
);

这里的 timeoutheaders 只对这一条请求生效,不会修改实例默认配置。

获取原生响应(raw)

默认情况下,SDK 会把接口响应归一化成:

typescript
{
  code,
  data
}

如果你还想拿到未经修改的原始响应内容,可以开启 raw: true

typescript
const response = await client.ship.search({ kw: 'COSCO' }, { raw: true });

console.log(response.code);    // 0
console.log(response.data);    // 归一化后的业务数据
console.log(response.raw);     // 原始 JSON

需要注意:

  • raw 不会替代 data,而是额外挂在返回值上
  • raw 适合排查问题或对照接口原始返回,不建议业务代码默认依赖它