【问题标题】:Express + Node application deployed to Azure can't connect to CosmosDB/DocumentDB部署到 Azure 的 Express + Node 应用程序无法连接到 CosmosDB/DocumentDB
【发布时间】:2017-11-06 22:48:17
【问题描述】:

我使用 Nodejs、express 和 DocumentDB 创建了一个应用程序并将其部署到 Azure(应用程序服务\Web 应用程序)。一切正常,只是没有连接到 DocumentDB。它在我的本地环境中运行良好。

我是这个环境的新手,所以不确定可以提供哪些额外信息。

我的本​​地环境和 azure 之间的唯一区别是我添加了以下 web.config,因为站点没有启动

【问题讨论】:

  • 您的 Azure 数据库是否启用了 ssl?如果是,则尝试通过设置ssl=true 连接它
  • 这可能是问题所在。我应该在哪里设置 ssl=true?
  • 对于Error 500,您需要启用并查看您的网络消息的详细错误。关于如何开启stdoutstderr的日志,请参考this post

标签: node.js azure express azure-cosmosdb


【解决方案1】:

这几天真是令人沮丧。

CosmosDB 设置中列出的 URI 是 https://xxxxxxxxpoc5.documents.azure.com:443/

对我有用的 URI 是 https://xxxxxxxxpoc5.documents.azure.com/,没有端口号 443。

注意:两个 URI 都在我的本地系统中工作。

【讨论】:

  • 感谢 JSP 也解决了我的问题。我从一个示例应用程序中复制了 443,它可以在本地工作,但一旦部署就不会。删除 443 解决了这个问题。
【解决方案2】:

根据您的描述,您似乎在Azure portal 中启用了IP 访问控制。如果是这种情况,那么您需要将当前 IP 添加到允许的 IP 列表中。见Azure Cosmos DB firewall support

【讨论】:

  • IP 访问控制未启用。如何检查 config.js 文件是否部署正确?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-24
  • 2019-09-04
  • 1970-01-01
  • 1970-01-01
  • 2018-05-07
相关资源
最近更新 更多