《Windows Azure Platform 系列文章目录》
之前客户有1个需求,我这里研究了一下可以实现,先记录一下。
环境准备:
- 创建1个新的Azure资源组,创建Azure VNet,有2个Subnet
- subnet-1部署API Management
- subnet-2部署一台Azure VM。这台VM仅有内网IP地址
- 在Azure VM上准备一个HTPP API,返回一串JSON,具体如下图:
搭建API Management
1.设置SKU为Developer,注意:仅为演示使用,Developer SKU没有SLA保障。
设置API Management name,访问URL如下:
2.选择与VNet集成,Type为External,即该API Management提供公网访问,我们需要配置加入到subnet-1,如下图:
3.等待API Management创建完毕
4.创建完毕后,选择API Management,点击API,点击Add API,点击HTTP API。图略
5.在Web Service URL输入虚拟机内网IP地址。如下图:
6.增加Operation,如下图:
7.增加Action,如下图:
8.修改API Inbound Rule,设置All APIs,针对所有API都生效
9.在弹出的窗口中,选择CORS。Allowed Origins设置为*,点击保存
10.然后继续点击步骤5中的Inbound Processing,点击Add Policy,选择Full
修改下面1-5部分
11.登录到http://tool.chinaz.com/Tools/Base64.aspx
12.在左边输入字符:PasswordMSFTleizhang20211109,把该字符设置为Base64编码
把下图右侧部分,复制到上面步骤10的截图5里
13.然后打开https://jwt.io/,在下图箭头部分,输入步骤11中,被base64编码后的值
勾选下图的secret based64 encoded,再把下图中左侧encoded部分复制到剪切板
14.复制API Management的build in access key,如下图
15.最后,我们打开postman,输入访问的url
方法为GET。访问地址在步骤1说明了
Ocp-apim-subscription-key的值,在步骤14中复制了
Authorization,设置为Bearer[空格]AccessKey,这里的Access Key,就是步骤13的左侧部分
访问结果就是我们需要的JSON内容