BackendSrv interface
Used to communicate via http(s) to a remote backend such as the Grafana backend, a datasource etc. The BackendSrv is using the Fetch API under the hood to handle all the communication.
The request function can be used to perform a remote call by specifying a BackendSrvRequest. To make the BackendSrv a bit easier to use we have added a couple of shorthand functions that will use default values executing the request.
Signature
export interface BackendSrv
Import
import { BackendSrv } from '@grafana/runtime';
Remarks
By default, Grafana displays an error message alert if the remote call fails. To prevent this from happening showErrorAlert = true
on the options object.
Methods
Method | Description |
---|---|
datasourceRequest(options) | |
delete(url) | |
fetch(options) | Observable http request interface |
get(url, params, requestId) | |
patch(url, data) | |
post(url, data) | |
put(url, data) | |
request(options) |
datasourceRequest method
Signature
datasourceRequest<T = any>(options: BackendSrvRequest): Promise<FetchResponse<T>>;
Parameters
Parameter | Type | Description |
---|---|---|
options | BackendSrvRequest |
Returns:
Promise<FetchResponse<T>>
delete method
Signature
delete(url: string): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
url | string |
Returns:
Promise<any>
fetch method
Observable http request interface
Signature
fetch<T>(options: BackendSrvRequest): Observable<FetchResponse<T>>;
Parameters
Parameter | Type | Description |
---|---|---|
options | BackendSrvRequest |
Returns:
Observable<FetchResponse<T>>
get method
Signature
get(url: string, params?: any, requestId?: string): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
url | string | |
params | any | |
requestId | string |
Returns:
Promise<any>
patch method
Signature
patch(url: string, data?: any): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
url | string | |
data | any |
Returns:
Promise<any>
post method
Signature
post(url: string, data?: any): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
url | string | |
data | any |
Returns:
Promise<any>
put method
Signature
put(url: string, data?: any): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
url | string | |
data | any |
Returns:
Promise<any>
request method
Signature
request(options: BackendSrvRequest): Promise<any>;
Parameters
Parameter | Type | Description |
---|---|---|
options | BackendSrvRequest |
Returns:
Promise<any>