从本地计算机连接到Azure Cosmos DB时出现“服务当前不可用”

时间:2018-12-19 13:29:01

标签: azure azure-functions azure-cosmosdb

使用Cosmos DB触发器在本地调试Azure Function V1时,我们遇到了一个奇怪的问题。应用启动时,它会等待几分钟,然后引发异常“服务当前不可用”:

image.png

当我在家中运行相同的应用程序时,它运行良好。部署到Azure时,它也可以完美运行。

此外,使用Azure Functions V2实现的类似应用程序也可以在有问题的计算机上工作。

引起问题的计算机在公司网络中。我们使用包含https的真实连接字符串,而不是仿真器。

这确实看起来像是客户端连接问题...它是什么以及如何解决?

1 个答案:

答案 0 :(得分:3)

host.json文件中的以下更改解决了该问题:

{
  "documentDB": {
    "connectionMode": "Gateway",
    "protocol": "Https"
  }
}

Azure Functions V1与Cosmos DB的连接默认为直接模式,而V2(由于Function V2是多平台,需要在任何平台上运行)默认为网关模式。在防火墙环境中,直接模式有时可能会出现问题。

了解更多: