ARM模板部署标准Logic App SQL Get Row(V2)时初始化操作详情报错
问题核心
部署包含SQL Server Get Row(V2)操作的标准Logic App(关联手动创建后导出修改的API连接)成功后,点击操作出现以下错误:
无法初始化基于Swagger的操作Get_row_(V2)的操作详情,错误详情为找不到针对位置'r g - cis - dev - we - 001'、API版本'2018 - 07 - 01 - preview'的'type/locations/managedApis'资源提供程序
解决步骤
修正API连接的位置参数:错误中的位置值
r g - cis - dev - we - 001是资源组名称,而非Azure区域标识符(如westus、westeurope)。检查ARM模板中API连接资源的location字段,替换为正确的Azure区域名称,确保和Logic App、本地网关的区域一致。更换支持的managedApis API版本:错误提示明确指出
2018-07-01-preview版本不被支持,查看系统给出的支持版本列表,替换为有效版本(常用为2016-06-01)。在API连接的ARM定义中,检查managedApiId字段的格式,确保API版本部分正确,示例格式:"managedApiId": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', parameters('location'), '/managedApis/sql')]"注意这里不需要显式指定API版本,使用默认的有效版本即可。
验证API连接的Runtime配置:手动修改导出的ARM模板时,确保从流量中捕获的
properties.connectionRuntimeUrl、properties.authentication等字段格式正确,没有多余空格或错误的区域/版本信息。重新部署并刷新设计器:修改模板后重新部署所有资源,部署完成后强制刷新Logic App设计器页面,避免前端缓存导致的错误残留。
确认资源提供程序注册状态:在Azure订阅的「资源提供程序」中,检查
Microsoft.Web是否已注册,若未注册则完成注册操作(通常部署时会自动注册,但特殊情况可能需要手动触发)。
内容的提问来源于stack exchange,提问作者Joe Gurria Celimendiz

