技术问询:能否从Azure Workbooks调用Azure函数API?
可以从Azure Workbooks调用Azure函数/API
是的,Azure Workbooks支持调用外部API(包括Azure Functions),以下是两种常用实现方式:
1. 使用HTTP数据源直接调用
- 在Workbooks中新增查询,选择
HTTP作为数据源类型。 - 配置请求参数:
- 填写Azure函数的HTTP触发URL(例如
https://<your-function-app>.azurewebsites.net/api/<function-name>)。 - 根据函数要求设置请求方法(GET/POST等)、请求头(如函数密钥
x-functions-key、Content-Type)、请求体(POST请求时传入参数)。
- 填写Azure函数的HTTP触发URL(例如
- 提交请求后,Workbooks会直接获取API返回的数据,你可以将其绑定到表格、图表等可视化组件。
2. 通过Kusto查询调用
如果你的Workbooks使用Kusto作为数据源,可以借助Kusto的HTTP相关函数实现调用:
示例1:简单GET请求(使用externaldata)
let funcResult = externaldata(response:dynamic) [h'https://<your-function-app>.azurewebsites.net/api/<function-name>?code=<your-api-key>'] with (format=raw); funcResult | parse_json(response)
示例2:带认证和请求体的POST请求(使用http_request)
http_request( url='https://<your-function-app>.azurewebsites.net/api/<function-name>', method='POST', headers=dynamic({'x-functions-key':'<your-api-key>', 'Content-Type':'application/json'}), body=dynamic({'inputParam':'testValue'}) ) | project result = parse_json(ResponseBody)
注意事项
- 确保Azure函数配置为HTTP触发类型,并且正确设置了访问权限(函数密钥或Azure AD认证)。
- 如果Workbooks部署在受限制的网络环境(如VNet),需确保允许访问Azure函数的端点。
- 对于返回的JSON数据,使用
parse_json函数解析后,可轻松提取字段用于可视化。
内容的提问来源于stack exchange,提问作者Fares
相关产品推荐
相关产品推荐

