通过 APIM 使用 Azure 功能的 REST URL
Posted
技术标签:
【中文标题】通过 APIM 使用 Azure 功能的 REST URL【英文标题】:REST URL with Azure function via APIM 【发布时间】:2021-06-01 09:22:26 【问题描述】:我有一个具有 2 个功能的用户函数应用程序:
创建用户。 POST + Route = "用户" 获取用户。 GET + Route = "用户"我想通过 API 管理公开这些功能。假设API管理的域是https://my-apim.azure-api.net
如何使用以下 URL 公开这些函数:
CreateUser = POST https://my-apim.azure-api.net/v1/users GetUsers = 获取https://my-apim.azure-api.net/v1/usersAPIM 需要 API URL 后缀来确定正确的 API。所以生成的 URL 是(以 userfunction 作为 API URL 后缀):
CreateUser = POST https://my-apim.azure-api.net/userfunction/v1/users GetUsers = 获取https://my-apim.azure-api.net/userfunction/v1/users我可以将 API URL Suffix 留空以实现预期的 URL,但是当我将来需要向 APIM 添加更多 API 时,这将是一个问题
【问题讨论】:
【参考方案1】:通过以下步骤解决:
-
在 APIM 中添加 URL 后缀:api/users
在 APIM 中,选择 API
转到“设计”>“前端”部分并删除那里的 URL 路径,使其仅包含 /
向 API 添加 rewrite-uri 策略,以便在将请求转发到后端服务时附加 /users
生成的 URL 将是 https://apim-domain/api/users
【讨论】:
以上是关于通过 APIM 使用 Azure 功能的 REST URL的主要内容,如果未能解决你的问题,请参考以下文章
使用 Azure 应用网关 + APIM 进行 SSL 固定
为用户创建订阅的 Azure API 管理 REST 调用(缺失)