无法从逻辑应用程序中查看 Azure Functions

Unable to see Azure Functions from Logic Apps

我已经创建了几个带有自定义路由的 Azure Functions,根据我从文档 https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-functions#prerequisites 中了解到的情况,它们不会出现在逻辑应用程序的 Azure Functions 列表中,它们确实没有。

为了测试,我包含了一个没有自定义路由的 Azure Function,它对逻辑应用可见。

我尝试按照 https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-functions#function-swagger (CORS) and https://docs.microsoft.com/en-us/azure/azure-functions/functions-openapi-definition 中的说明进行操作(设置 API 管理),但仍然没有从逻辑应用程序中看到我的 Azure Functions。

我确定我遗漏了一些东西,我们将不胜感激。

根据我的测试,教程没有完成这个需求。这个tutorial只是告诉我们如何生成openapi定义,但是在这个操作之后我们还需要做一些更多的步骤。

在你的函数应用程序中,点击"Platform features"标签下的"API Management",我们可以找到一个"Download OpenAPI definition"按钮,点击它下载一个swagger文件,其中在json类型.

我们上面下载的swagger只是一个基础文件,那么你需要根据你函数的request body在swagger文件中做一些自定义修改,然后将这个swagger文件上传到azure blob存储中。

转到您的函数应用程序并单击 "Platform features" 标签下的 "All settings",然后单击 "API definition"。

然后复制url的存储blob(存储上面的swagger文件)到"API definition location"框。

现在我们可以在"Swagger actions"下的logic app中找到函数了

对了,这个 which introduce a Nuget to generate the swagger file. And here is a sample可以参考一下,供大家参考。

我想通了。

您只能看到没有在 HttpTrigger 属性中定义路由的 Http 触发器的 Azure Functions。