我有一个托管在 Azure 应用服务中的 .NET Core Web API,前面有 API 管理。
我已将 API 管理的 IP 添加到我的应用服务的入站流量中:
如果我向 API 管理端点发送没有订阅 key 的请求,我会得到
{
"statusCode": 401,
"message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}
当我添加订阅 key 并通过 postman 发送请求时,除非我设置超时,否则它将无限加载。
我可以直接向应用服务端点 URL 发送请求(通过临时将我的 IP 添加到网络设置中允许的 IP 地址),并且它工作得很好,当我检查日志流时,我可以看到我的请求已成功处理的日志我的中间件。
但是当我向 API 管理端点发送请求时,我的中间件的应用服务日志流中没有日志。
当我检查 API 管理中的日志时,我发现此错误,这对我没有多大帮助:
知道什么可能导致这种情况吗?也许我设置应用服务/API 管理的方式出了问题。
最佳答案
呃,发现错误了。我不小心将 API 管理设置中的“Web 服务 URL”设置为 API 管理 URL,而不是应用服务 URL,因此它本质上是在尝试向自身发送请求,可能会导致无限循环。
关于c# - Azure API 管理将请求 ClientConnectionFailure 转发到应用服务 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71780407/