2

我有一个无法连接到 SQL Db 的简单 node.js 应用程序。

Web 服务器是 Azure Web App,运行 node.js 并使用Tedious for SQL。DB 是 Azure SQL 数据库。

这是详细的错误:

{ 消息:'无法连接到 xxx.database.windows.net:1433 - 未定义',代码:'ESOCKET' }

2016 年 1 月 14 日星期四 08:05:05 GMT+0000(协调世界时):无异常:ConnectionError:连接丢失 - 在连接处连接EADDRNOTAVAIL 。(D:\home\site\api\node_modules\tedious\lib\connection.js:797:26)在 Socket。(D:\home\site\api\node_modules\tedious\lib\connection.js:33:15) 在 Array.1 (net.js:301:14) 的 Socket.emit (events.js:88:20)在 EventEmitter._tickCallback (node.js:190:38)

它适用于我的机器,有趣的是它也适用于另一个 Azure Web 应用程序!我尝试重新启动此网络应用程序,但没有...此错误是什么意思?

4

1 回答 1

2

我试图重现该问题,但失败了。所以我搜索了一些类似EADDRNOTAVAILNodeJS 和 Tedious 的 keyworks,然后我找到了https://github.com/nodejs/node-v0.x-archive/issues/6833页面。

它启发了我,这个问题可能是在某个指定的版本节点上引起的。您可以在 url 找到不良 WebApp 的节点版本https://<the_bad_webapp_name>.scm.azurewebsites.net/Env,并与优良的进行比较。

https://<node webapp name>.scm.azurewebsites.net/api/diagnostics/runtime您可以在Node WebApp的 url 看到 Azure 支持的所有节点版本。

如果他们的节点版本不同,您可以尝试指定节点版本的繁琐工作正常为糟糕的 webapp,请参阅文档https://azure.microsoft.com/en-us/documentation/articles/nodejs-specify -node-version-azure-apps/知道如何去做。

希望能帮助到你。

于 2016-01-29T11:20:45.453 回答