Axios SDK for RedAI Dynamic Table APIs
npm install @redonvn/redai-backend-api-sdkSDK axios cho API dynamic-table (backend NestJS).
``bash`
npm install
`bash`
npm run generate
Mặc định generator đọc OpenAPI từ:
F:\Redon\DuAn\project01\true\src\modules\dynamic-table\tests\curl\docs-json.json
Có thể override:
`bash`
OPENAPI_PATH=path/to/openapi.json npm run generate
`bash`
npm run type-check
npm run build
`ts
import {
createDynamicTableSdk,
createFrontendAxiosTokenProvider,
} from '@redonvn/redai-backend-api-sdk';
const sdk = createDynamicTableSdk({
baseURL: 'https://api.example.com/v1',
tokenProvider: createFrontendAxiosTokenProvider({
authStorageKey: 'auth_data',
dtApiToken: 'dt-api-token',
}),
});
const res = await sdk.workspaces.getWorkspaceBySlug({ slug: 'my-workspace' });
`
`ts`
import { WorkspaceResponseDto, WorkspacesService } from '@redonvn/redai-backend-api-sdk';
Khi cần deep import theo module generated:
`ts`
import type { WorkspaceResponseDto } from '@redonvn/redai-backend-api-sdk/generated/dynamic-table/types';
import { WorkspacesService } from '@redonvn/redai-backend-api-sdk/generated/dynamic-table/services/workspaces.service';
`ts
sdk.auth.setBearerToken('new-jwt');
sdk.auth.setDtApiToken('new-dt-token');
sdk.auth.setAuth({ bearerToken: null, dtApiToken: null });
// Tắt token provider nếu muốn quay về set token thủ công
sdk.auth.setTokenProvider(null);
`
- src/core/*: runtime axios + authsrc/generated/types.ts
- : types sinh từ OpenAPIsrc/generated/services/*.service.ts
- : service theo domaintools/generate-dynamic-table-sdk.ts`: tool generator
-