将摇摇欲坠的页面映射到APIM

问题描述 投票:1回答:1

我有一个要与APIM一起使用的站点,并且已经成功将我的API映射到APIM。但是,我有一个招摇的页面,我只想在与APIM相同的域中可用。我怎样才能做到这一点?摇摇欲坠的页面是:

https://mysite.azurewebsites.net/api/swagger/index.html

我想让它像这样出现

https://myapidomain.com/swagger

我在APIM中的api的格式是,所以我要招摇以匹配相同的域

https://myapidomain.com/api/myfirstapi

swagger-ui azure-api-management
1个回答
0
投票

这可以做一些警告,具体取决于您的网页的复杂程度:

  1. 创建URL后缀为“ swagger”的API
  2. 也可以从该API中取消选中“需要订阅”以使其匿名
  3. 使用URL模板“ /”和GET方法创建内部操作
  4. 向操作入站添加策略: <set-backend-service base-url="https://mysite.azurewebsites.net" /> <rewrite-uri template="/api/swagger/index.html" />

  5. 测试和调整

这将照顾页面本身。如果页面使用Cookie或通过相对URI引用外部脚本/图像,将会出现问题。 Cookies将是一个问题,因为它们将域设置为“ mysite.azurewebsites.net”,因此您需要在政策中注意这一点。

具有相对URL的资源是有问题的,因为浏览器将使用这些URL向您的APIM服务发出其他请求,因此您需要创建其他操作来覆盖这些请求。在操作模板中使用*可能有助于覆盖多个资源。

© www.soinside.com 2019 - 2024. All rights reserved.