TypeScript SDK

配置

了解如何设置 API URL、配置认证以及配置底层 HTTP 客户端。

API URL

Orion.init('https://your-api.test');

API 前缀

默认情况下,前缀值为 api,但在某些情况下你可能需要修改它。

Orion.init('https://your-api.test', 'api/v1');
// 或者
Orion.setPrefix('api/v1');

认证驱动

import {AuthDriver} from '@tailflow/laravel-orion/lib/drivers/default/enums/authDriver';

Orion.init('https://your-api.test', 'api', AuthDriver.Sanctum);
// 或者
Orion.setAuthDriver(AuthDriver.Sanctum);

令牌

import {AuthDriver} from '@tailflow/laravel-orion/lib/drivers/default/enums/authDriver';

Orion.init('https://your-api.test', 'api', AuthDriver.Sanctum, 'test-access-token');
// 或者
Orion.setToken('test-access-token');

为 SPA 集成 Sanctum

在向 API 发起请求之前,需要先初始化 CSRF 保护

import {AuthDriver} from '@tailflow/laravel-orion/lib/drivers/default/enums/authDriver';

Orion.init('https://your-api.test');
Orion.setAuthDriver(AuthDriver.Sanctum);

try {
    await Orion.csrf();
    // 现在可以向 API 发起请求了
    const posts = await Post.$query().get();
} catch (error) {
    console.error('Unable to retrieve CSRF cookie.');
}

自定义 Axios 实例

import axios from 'axios';

Orion.makeHttpClientUsing(() => {
  const client = axios.create();

  client.interceptors.request.use(...);

  return client;
});