我正在使用API管理服务来管理我的API。当我最初设置时:
i)API -使用HTTPTrigger指向Azure函数应用ii)产品-使用API iii)订阅-由产品创建
最初它工作得很好。我可以通过curl命令手动查询它,如下所示:curl -X GET "https://mydomain.io/foo/v1/get-my-data?input_value=3" -H Ocp-Apim-Subscription-Key: <KEY>
但是几个小时后(<12),它突然开始失败,并返回401。它不仅在命令行中失败,甚至在API Azure控制台中使用“Test”工具也会失败-参见屏幕截图
< HTTP/1.1 401 Unauthorized
我什么都没改变,它就开始发生了。我可以通过以下方式解决问题:
1.删除订阅
1.移除产品
1.删除API
1.重新添加API
1.使用订阅重新添加产品
我是一个使用API管理服务的新手。
阅读我检查过的许多Azure故障排除文档:
- 我的订阅没有设置费率限制
- 订阅密钥正确
- 单独更改订阅密钥并不能解决问题,只有重新创建API才能解决问题
测试工具不工作的事实让我认为这与API和无服务器HTTPTrigger之间的握手有关。但我真的不知道该怎么解决。
1条答案
按热度按时间vdzxcuhz1#
我在Azure中使用了下面的代码。
带Http触发器的无服务器Az-Function
代码片段
响应
使用Azure函数URL
有关详细信息,请参阅Errors with API Management和Azure API Management.