logologo
Start
Dokumentacja
Deweloperzy
Wtyczki
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Start
Dokumentacja
Deweloperzy
Wtyczki
API
logologo
Przegląd API

@nocobase/auth

AuthManager
Uwierzytelnianie
BaseAuth

@nocobase/cache

CacheManager
Pamięć podręczna

@nocobase/cli

NocoBase CLI
Globalne zmienne środowiskowe

@nocobase/client

Aplikacja
Wtyczka

@nocobase/database

Kolekcja
Pole

interfaces

BaseInterface
Operatory Filtrowania

RelationRepository

BelongsToManyRepository
belongs-to-repository
HasManyRepository
HasOneRepository
Repozytorium

shared

create-options
destroy-options
find-one
find-options
transaction
update-options

@nocobase/data-source-manager

DataSourceManager
Źródło danych (abstrakcyjne)
ICollectionManager
ICollection
IField
IModel
IRepository

@nocobase/flow-engine

Menedżer źródeł danych
Kontekst przepływu
FlowEngine
FlowModel
Zasób przepływu

@nocobase/logger

Rejestrator

@nocobase/server

AppCommand
Aplikacja
AuditManager
Kontekst
Migracja
Wtyczka

@nocobase/sdk

Autoryzacja
Storage
Previous PageWtyczka
Next PageAutoryzacja
TIP

Ten dokument został przetłumaczony przez AI. W przypadku niedokładności, proszę odnieść się do wersji angielskiej

#APIClient

#Przegląd

APIClient to klasa opakowująca, oparta na bibliotece axios, służąca do wykonywania operacji na zasobach NocoBase po stronie klienta, za pośrednictwem protokołu HTTP.

#Podstawowe użycie

class PluginSampleAPIClient extends Plugin {
  async load() {
    const res = await this.app.apiClient.request({
      // ...
    });
  }
}

#Właściwości instancji

#axios

Instancja axios, umożliwiająca dostęp do API axios, na przykład apiClient.axios.interceptors.

#auth

Klasa do uwierzytelniania po stronie klienta, zobacz Uwierzytelnianie.

#storage

Klasa do przechowywania danych po stronie klienta, zobacz Przechowywanie Danych.

#Metody klasy

#constructor()

Konstruktor, tworzy instancję APIClient.

#Sygnatura

  • constructor(instance?: APIClientOptions)

#Typ

interface ExtendedOptions {
  authClass?: any;
  storageClass?: any;
}

export type APIClientOptions =
  | AxiosInstance
  | (AxiosRequestConfig & ExtendedOptions);

#request()

Wykonuje żądanie HTTP.

#Sygnatura

  • request<T = any, R = AxiosResponse<T>, D = any>(config: AxiosRequestConfig<D> | ResourceActionOptions): Promise<R>

#Typ

type ResourceActionOptions<P = any> = {
  resource?: string;
  resourceOf?: any;
  action?: string;
  params?: P;
};

#Szczegóły

#AxiosRequestConfig

Ogólne parametry żądania axios. Zobacz Konfiguracja Żądania.

const res = await apiClient.request({ url: '' });
#ResourceActionOptions

Parametry żądania operacji na zasobach NocoBase.

const res = await apiClient.request({
  resource: 'users',
  action: 'list',
  params: {
    pageSize: 10,
  },
});
WłaściwośćTypOpis
resourcestring1. Nazwa zasobu, np. a
2. Nazwa powiązanego obiektu zasobu, np. a.b
resourceOfanyGdy resource jest nazwą powiązanego obiektu zasobu, jest to wartość klucza podstawowego zasobu. Na przykład, dla a.b, reprezentuje wartość klucza podstawowego a.
actionstringNazwa akcji
paramsanyObiekt parametrów żądania, głównie parametry URL. Treść żądania umieszczana jest w params.values.
params.valuesanyObiekt treści żądania

#resource()

Pobiera obiekt metod operacji na zasobach NocoBase.

const resource = apiClient.resource('users');

await resource.create({
  values: {
    username: 'admin',
  },
});

const res = await resource.list({
  page: 2,
  pageSize: 20,
});

#Sygnatura

  • resource(name: string, of?: any, headers?: AxiosRequestHeaders): IResource

#Typ

export interface ActionParams {
  filterByTk?: any;
  [key: string]: any;
}

type ResourceAction = (params?: ActionParams) => Promise<any>;

export type IResource = {
  [key: string]: ResourceAction;
};

#Szczegóły

ParametrTypOpis
namestring1. Nazwa zasobu, np. a
2. Nazwa powiązanego obiektu zasobu, np. a.b
ofanyGdy name jest nazwą powiązanego obiektu zasobu, jest to wartość klucza podstawowego zasobu. Na przykład, dla a.b, reprezentuje wartość klucza podstawowego a.
headersAxiosRequestHeadersNagłówki HTTP do dołączenia do kolejnych żądań operacji na zasobach.