KI-Übersetzungshinweis

Diese Dokumentation wurde automatisch von KI übersetzt.

APIClient

Überblick

APIClient basiert auf axios und wird verwendet, um clientseitig über HTTP NocoBase-Ressourcenoperationen anzufordern.

Grundlegende Verwendung

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

Instanzeigenschaften

axios

Die axios-Instanz, über die Sie auf die axios-API zugreifen können, zum Beispiel apiClient.axios.interceptors.

auth

Die clientseitige Authentifizierungsklasse, siehe Auth.

storage

Die clientseitige Speicherklasse, siehe Storage.

Klassenmethoden

constructor()

Der Konstruktor erstellt eine APIClient-Instanz.

Signatur

  • constructor(instance?: APIClientOptions)

Typ

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

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

request()

Startet eine HTTP-Anfrage.

Signatur

  • 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;
};

Details

AxiosRequestConfig

Allgemeine axios-Anfrageparameter. Siehe Request Config.

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

NocoBase-Ressourcenoperations-Anfrageparameter.

const res = await apiClient.request({
  resource: 'users',
  action: 'list',
  params: {
    pageSize: 10,
  },
});
EigenschaftTypBeschreibung
resourcestring1. Ressourcenname, z. B. a
2. Name des verknüpften Objekts der Ressource, z. B. a.b
resourceOfanyWenn resource der Name des verknüpften Objekts der Ressource ist, ist dies der Primärschlüsselwert der Ressource. Zum Beispiel bei a.b repräsentiert es den Primärschlüsselwert von a.
actionstringName der Operation
paramsanyAnfrageparameterobjekt, hauptsächlich URL-Parameter. Der Anfragekörper wird in params.values platziert.
params.valuesanyAnfragekörperobjekt

resource()

Ruft das NocoBase-Ressourcenoperationsmethodenobjekt ab.

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

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

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

Signatur

  • 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;
};

Details

ParameterTypBeschreibung
namestring1. Ressourcenname, z. B. a
2. Name des verknüpften Objekts der Ressource, z. B. a.b
ofanyWenn name der Name des verknüpften Objekts der Ressource ist, ist dies der Primärschlüsselwert der Ressource. Zum Beispiel bei a.b repräsentiert es den Primärschlüsselwert von a.
headersAxiosRequestHeadersHTTP-Header, die in nachfolgenden Ressourcenoperationsanfragen mitgesendet werden sollen.