APIUrl 前缀不适用于 Azure APIM

APIUrl prefix not working with Azure APIM

我有一个 AZURE Apim,它映射到我部署了 Web API 的应用程序服务(每个客户单独 API)。 我在 APIM 端点中添加了 API URL 前缀(客户名称),以便我可以根据客户定义端点,如下所示。 APIM URL: http://demoapim.com apim URL 前缀:客户名称(cust1, cust2) 所以现在 URL 将是

http://demoapim.com/cust1 http://demoapim.com/cust2

web API 端点:http://cutomerapi.com/details

当我尝试访问 http://demoapim.com/cust2/details or http://demoapim.com/cust1/details 时, 它给出 404.but http://demoapim.com/details 作品。 请帮我看看我在这里遗漏了什么。

了解了apim后,有以下几点,希望对大家有所帮助

  1. 不管你设置了多少个apim URL前缀,cust1,cust2等等。最终访问地址为/cust1/details,webapp服务无法识别该地址的路由。那么问题就来了

  2. 所以我觉得应该不是apim服务的问题,你应该注意的是你的webapp服务。您可以重写url或者识别访问请求的cust1或cust2以及return对应的数据。

URL 重写例如

你原来的URL:
http://demoapim.com/cust2-details

最终 URL:
http://demoapim.com?cust=cust2&title=details

在webapp服务中使用urlrewrite会更好的满足您的业务需求