You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Excel Power Query从资产ID列表生成CMDB REST请求并调用?

用Excel Power Query生成CMDB REST URI并发起请求

方案一:生成单条批量请求URI并调用

假设资产ID存放在Excel的Sheet1中,A列格式如下(A1为标题ID,A2及以下为具体ID):

ID
1001
1002
1003

操作步骤:

  1. 导入数据到Power Query:点击「数据」选项卡 →「自表格/区域」,选中ID列数据,确认加载到Power Query编辑器。
  2. 生成批量参数串:
    • 在编辑器的「转换」选项卡,点击「到列表」,将ID列转为列表。
    • 点击「添加列」→「自定义列」,输入以下M代码生成带序号的参数列表:
      let
          IDList = Source[ID],
          ParamList = List.Transform(IDList, (id, index) => "arg" & Text.PadStart(Text.From(index + 1), 2, "0") & "=" & Text.From(id)),
          ParamString = Text.Combine(ParamList, ";")
      in
          ParamString
      
    • 拼接完整请求URI:继续添加自定义步骤,生成最终URL:
      let
          BaseURL = "https://my.cmdb.server/RESTService.pl?method=lst_asset:",
          FullURL = BaseURL & ParamString & ";"
      in
          FullURL
      
  3. 发起请求并解析数据:
    • 添加步骤调用API(假设返回JSON格式,若为XML则替换为Xml.Document):
      let
          Response = Web.Contents(FullURL),
          ParsedData = Json.Document(Response)
      in
          ParsedData
      
    • 点击「关闭并上载」,将返回的资产数据加载回Excel。

方案二:生成多条单个请求URI并调用

操作步骤:

  1. 同样将ID列导入Power Query编辑器。
  2. 生成单个请求URI:
    • 点击「添加列」→「自定义列」,输入公式生成每条ID对应的URL:
      "https://my.cmdb.server/RESTService.pl?method=lst_asset:arg01=" & Text.From([ID])
      
    • 将该列重命名为RequestURL。
  3. 创建处理单条请求的自定义函数:
    • 打开「高级编辑器」,插入以下函数代码(放在现有代码最上方):
      let GetCMDBData = (url as text) =>
          let
              Source = Web.Contents(url),
              ParsedResult = Json.Document(Source)
          in
              ParsedResult
      in
          GetCMDBData
      
  4. 批量调用API并展开数据:
    • 添加自定义列,调用上述函数:
      GetCMDBData([RequestURL])
      
    • 点击该列的展开按钮,选择需要加载的字段,完成数据展开。
  5. 关闭并上载数据到Excel。

注意事项

  • 若API需要认证(如Token、API Key),可在Web.Contents中添加请求头参数,示例:Web.Contents(url, [Headers=[Authorization="Bearer YOUR_TOKEN"]])。
  • 若遇到隐私级别提示,可在Power Query的「文件」→「选项和设置」→「查询选项」→「隐私」中,设置为「忽略隐私级别检查」。

内容的提问来源于stack exchange,提问作者Magic Thighs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:50:38