ApiCenterProductionVersionPlugin

检查应用中使用的 API 是否是指定 Azure API 中心实例中注册的 API 的生产版本。

显示开发人员代理检查记录的 API 请求是否与 Azure API 中心中注册的生产版本 API 匹配的命令提示符的屏幕截图。

插件实例定义

{
  "name": "ApiCenterProductionVersionPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
  "configSection": "apiCenterProductionVersionPlugin"
}

配置示例

{
  "apiCenterProductionVersionPlugin": {
    "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
    "resourceGroupName": "resource-group-name",
    "serviceName": "apic-instance",
    "workspaceName": "default"
  }
}

配置属性

属性 说明 默认
resourceGroupName Azure API 中心所在的资源组的名称。
serviceName 如果注册了应用中使用的 API,则开发代理应用于检查的 Azure API 中心实例的名称。
subscriptionId Azure API 中心实例所在的 Azure 订阅的 ID。
workspace 要使用的 Azure API 中心工作区的名称。 default

命令行选项

备注

ApiCenterProductionVersionPlugin 插件检查应用中使用的 API 是否是指定 Azure API 中心实例中注册的 API 的生产版本。 如果 API 与非生产版本匹配,插件会显示警告。

为了连接到 Azure API 中心,该插件使用 Azure 凭据 (按以下顺序) :

  • 环境
  • 工作负载标识
  • 托管标识
  • Visual Studio
  • Visual Studio Code
  • Azure CLI
  • Azure PowerShell
  • Azure 开发人员 CLI

如果插件未能获取访问令牌以访问 Azure,则会显示错误,并且开发人员代理会禁用它。 使用上述任一工具登录到 Azure,然后重启开发代理以 ApiCenterProductionVersionPlugin 使用该插件。

如果在 CI/CD 管道中使用开发代理,则可以将 subscriptionIdresourceGroupNameserviceNameworkspaceName 属性的值作为环境变量传递。 若要使用环境变量,请在值 @名称前面加上 ,例如:

{
  "apiCenterOnboardingPlugin": {
    "subscriptionId": "@AZURE_SUBSCRIPTION_ID",
    "resourceGroupName": "@AZURE_RESOURCE_GROUP_NAME",
    "serviceName": "@AZURE_APIC_INSTANCE_NAME",
    "workspaceName": "@AZURE_APIC_WORKSPACE_NAME"
  }
}

在此示例中,ApiCenterOnboardingPlugin插件将 、resourceGroupNameserviceNameworkspaceName 属性分别设置为 subscriptionIdAZURE_RESOURCE_GROUP_NAMEAZURE_APIC_INSTANCE_NAMEAZURE_APIC_WORKSPACE_NAME 环境变量的值AZURE_SUBSCRIPTION_ID