使用 curl 和 Visual Studio Code 开始使用 Microsoft Learn 目录 API

本文将帮助你开始将 Microsoft Learn 目录 API 与 curl 和 Visual Studio Code 配合使用。 如果不熟悉 API 的详细信息或其用例,建议首先查看 Learn 目录 API 功能概述文章

我们将演示的高级过程是:

  1. 查询 Learn 目录 API
  2. 查看初始响应
  3. “美化”该响应
  4. 将其转换为电子表格
  5. 尝试更多查询

开始根据自己的需求使用 Learn 目录 API 后,你可能会发现自己根据所需的工具集或需求稍微修改这些步骤,但一般情况下,在所有用例中使用它的过程都是相同的。

先决条件

若要按照本文中的步骤作,需要 curl 和 Visual Studio Code,这是两种常用的免费工具,用于查询 API。

  • 如果已安装 curl 和 Visual Studio Code,可以跳到“查询学习目录 API”部分。
  • 如果未安装这些软件,请按照以下部分中的说明进行操作。

下载并安装 curl

curl 是一种常用的、免费的开源命令行工具,可用于查询 API。

  1. 转到 curl 下载页 并下载适用于环境的包。 如果不确定要选取哪个选项,请使用 curl 下载向导
  2. 安装应用程序并按照提示进行配置。 本文以及查询 Learn 目录 API 都不需要特殊设置。

下载并设置 Visual Studio Code

Visual Studio Code 是由Microsoft创建的免费功能强大的代码编辑器。

  1. 转到 Visual Studio Code 站点 并下载适用于环境的包。
  2. 安装应用程序并按照提示进行配置。

查询学习目录 API

由于无需身份验证即可使用 Learn 目录 API,因此可以从已启用 curl 的任何命令行查询 API 终结点。 在本练习中,我们将使用 Visual Studio Code 中的终端。

  1. 打开 Visual Studio Code。
  2. 在顶部导航中选择终端。
  3. 选择“新建终端”以打开新的命令终端。
  4. 选择所选终端(Bash、CMD 等),然后键入以下命令。 以下命令指示它想要使用 curl,调用未筛选的 Learn 目录 API 终结点,并将输出对名为“output.json”的文件的响应,位于终端中显示的文件路径中定义的位置(例如:C:\Users\<username>):
curl https://learn.microsoft.com/api/catalog >> output.json
  1. 如果请求成功,应会看到有关文件总大小的信息,例如 13.1 M(大小可能会更改,具体取决于响应的大小)。 如果未成功,你应该会收到一条错误信息。

注意

使用完 output.json 文件后,应将其删除,或将其重命名为更适用的文件。 如果使用同一文件名再次查询 API,它将在现有文件中追加响应。 另一个选项是在初始查询命令(如“output-1212.json”或“output-de-de-2022-12-12.json”)期间更唯一地命名文件。

查看初始响应

初始响应采用 JSON 格式,将“最小化”,这意味着删除某些空格、行和选项卡以使文件更小。

  1. 在 Visual Studio Code 中,选择“文件”。
  2. 选择“打开文件”。
  3. 请转到在上一部分创建的“output.json” 文件。

这种最小化是一种标准做法,文件可以通过 Visual Studio Code 中的命令进行“美化”,我们将在下一部分中执行此作。

美化响应

  1. 在 Visual Studio Code 中打开“output.json”文件后,请使用 Ctrl+Shift+I。

JSON 应更新为拆分为多行,并且采用更具可读格式。 有关响应中不同属性和值的信息,请查看 Learn Catalog API 开发人员参考文章中的数据字典

将响应转换为电子表格

有许多人使用学习目录 API 执行单个任务或审阅,而不是将其集成到系统中。 对于这些用例,将 JSON 响应转换为 CSV 或 Excel 格式作为电子表格进行查看可能很有帮助。 可以使用任何首选转换工具,但在这里可以使用 Flatfile Json 到 CSV 转换器

  1. 转到:https://csvjson.com/json2csv
  2. 上传输出文件。
  3. 选择“转换”。
  4. 选择“下载”。

注意

请非常小心使用外部联机工具转换数据,并考虑要放入其中的数据。 对于 Learn 目录 API,响应是公开提供的,不需要身份验证,因此可以使用联机工具来帮助转换格式。

尝试更多的查询

按照上述步骤尝试更多查询,例如下面列出的查询。 查看每个响应文件大小的更改方式,以及其中对象的差异。

描述 查询
学习目录 API 中的所有项目 https://learn.microsoft.com/api/catalog/
所有西班牙语模块 https://learn.microsoft.com/api/catalog/?locale=es-es&type=modules
热门分数为0.9或更高的所有模块 https://learn.microsoft.com/api/catalog/?type=modules&popularity>0.9
所有初学者安全培训和认证项目 https://learn.microsoft.com/api/catalog/?level=beginner&subject=security
所有高级辅助功能模块,其受欢迎程度分数超过 0.5,并在上个月进行了更新 https://learn.microsoft.com/api/catalog/?level=advanced&subject=accessibility&popularity>0.5&last_modified=gte 2022-10-01

后续步骤

建议查看以下资源,帮助你完成开发之旅: