logologo
Start
Manual
Utveckling
Plugins
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
Manual
Utveckling
Plugins
API
logologo
API-översikt

@nocobase/auth

AuthManager
Auth
BaseAuth

@nocobase/cache

CacheManager
Cache

@nocobase/cli

NocoBase CLI
Globala Miljövariabler

@nocobase/client

Applikation
Plugin

@nocobase/database

Samling
Fält

interfaces

BaseInterface
Filteroperatorer

RelationRepository

BelongsToManyRepository
belongs-to-repository
HasManyRepository
HasOneRepository
Repository

shared

create-options
destroy-options
find-one
Tomt läge
transaction
update-options

@nocobase/data-source-manager

DataSourceManager
Datakälla (abstrakt)
ICollectionManager
ICollection
IField
IModel
IRepository

@nocobase/flow-engine

Datakällshanterare
Flödeskontext
FlowEngine
FlowModel
Flödesresurs

@nocobase/logger

Logger

@nocobase/server

AppCommand
Applikation
AuditManager
Kontext
Migrering
Plugin

@nocobase/sdk

Auth
Lagring
Previous PagePlugin
Next PageAuth
TIP

Detta dokument har översatts av AI. För eventuella felaktigheter, se den engelska versionen

#APIClient

#Översikt

APIClient är en inkapsling baserad på axios, som används för att begära NocoBase resursåtgärder på klientsidan via HTTP.

#Grundläggande användning

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

#Instansegenskaper

#axios

axios-instansen, som ger åtkomst till axios-API:et, till exempel apiClient.axios.interceptors.

#auth

Klientsidans autentiseringsklass, se Auth.

#storage

Klientsidans lagringsklass, se Storage.

#Klassmetoder

#constructor()

Konstruktor, skapar en APIClient-instans.

#Signatur

  • constructor(instance?: APIClientOptions)

#Typ

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

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

#request()

Skickar en HTTP-förfrågan.

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

#Detaljer

#AxiosRequestConfig

Allmänna axios-förfrågningsparametrar. Se Request Config.

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

Parametrar för NocoBase resursåtgärdsförfrågningar.

const res = await apiClient.request({
  resource: 'users',
  action: 'list',
  params: {
    pageSize: 10,
  },
});
EgenskapTypBeskrivning
resourcestring1. Resursnamn, t.ex. a
2. Namn på resursens associerade objekt, t.ex. a.b
resourceOfanyNär resource är namnet på resursens associerade objekt, är det resursens primärnyckelvärde. Till exempel, för a.b representerar det primärnyckelvärdet för a.
actionstringÅtgärdsnamn
paramsanyFörfrågningsparameterobjekt, främst URL-parametrar. Förfrågningskroppen placeras i params.values.
params.valuesanyFörfrågningskroppsobjekt

#resource()

Hämtar NocoBase resursåtgärdsmetodobjektet.

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

#Detaljer

ParameterTypBeskrivning
namestring1. Resursnamn, t.ex. a
2. Namn på resursens associerade objekt, t.ex. a.b
ofanyNär name är namnet på resursens associerade objekt, är det resursens primärnyckelvärde. Till exempel, för a.b representerar det primärnyckelvärdet för a.
headersAxiosRequestHeadersHTTP-huvuden att inkludera i efterföljande resursåtgärdsförfrågningar.