Plugins 如何包装外部api响应以满足json数据源后端需求

Plugins 如何包装外部api响应以满足json数据源后端需求,plugins,datasource,grafana,Plugins,Datasource,Grafana,我正在尝试创建一个grafana数据源插件,它将返回一个表类型格式的响应。 有一个第三方rest API应该向数据源提供数据,但是,此外部API的请求/响应格式不符合示例简单json数据源插件URL和请求格式。 是否有一种方法可以将外部api响应封装在datasource后端方法(/query)中,然后由datasource的前端部分调用?(添加数据源时,将在数据源设置UI中提供外部api URL) 我将感谢您的回答/建议。您必须编写代码,将第三方API响应转换为表类型格式 您可能希望从以下内容

我正在尝试创建一个grafana数据源插件,它将返回一个表类型格式的响应。 有一个第三方rest API应该向数据源提供数据,但是,此外部API的请求/响应格式不符合示例简单json数据源插件URL和请求格式。 是否有一种方法可以将外部api响应封装在datasource后端方法(/query)中,然后由datasource的前端部分调用?(添加数据源时,将在数据源设置UI中提供外部api URL)
我将感谢您的回答/建议。

您必须编写代码,将第三方API响应转换为表类型格式

您可能希望从以下内容开始:

克隆该项目,并将选项中传递的url值更改为doRequest()函数,这些值应指向您的第三方API

doRequest()函数似乎返回了一个承诺,因此您可以在实现这些承诺后进行数据转换,例如:

// simple-json-datasource/src/datasource.js 
// in the query() function
return this.doRequest(options).then(function(result) {
    // your transform code here;
    return transformedResult;
})