【问题标题】:Nodejs mssql connection error tls.createSecurePair() is deprecated. Please use tls.Socket insteadNodejs mssql 连接错误 tls.createSecurePair() 已弃用。请改用 tls.Socket
【发布时间】:2018-01-11 16:37:05
【问题描述】:

我正在将我的 nodejs 应用程序从本地移动到 Web 服务器。 当我在本地机器上测试数据库连接(使用'mssql'包的SQL Server)时,连接成功,但在网络服务器上我收到错误消息:

<node:6316> [DEP0064] DeprecationWarning: tls.createSecurePair() is deprecated. 
Please use tls.Socket() instead.

我能想到的唯一区别是我的本地服务器 npm 版本是 2.15.5,而 Web 服务器 npm 版本是 5.6.0。 我是否需要安装旧版本的 nodejs 才能使其工作,或者有什么方法可以让它工作?

提前致谢

【问题讨论】:

  • 你解决了吗?在 Azure 上部署时我遇到了同样的问题。 Azure 不允许应用启动并在日志中将警告打印为标准错误。

标签: sql-server node.js database-connection


【解决方案1】:

此警告实际上来自底层 TDS 驱动程序(请参阅 https://github.com/tediousjs/tedious/issues/515),目前(截至 2018 年初)受到关注并尝试解决。还应该注意的是,根据https://github.com/nodejs/node/pull/17882tls.createSecurePair() API 将保留在节点 8 中,该节点现在是 LTS,直到 2019 年底。

此外,这只是一个警告,但功能仍然存在。如果您使用 tcpdump 端口 1433,如果您使用 encrypt 选项,您将看到您的连接已加密。

【讨论】:

  • 这是一个警告,但它不允许 Azure Web App 启动服务器,它在日志中将警告显示为 stderr。怎么可能解决? ://
  • @CoderX,你能做到吗?我在这里也遇到了同样的问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-20
  • 1970-01-01
  • 1970-01-01
  • 2022-06-16
  • 2014-12-25
  • 1970-01-01
相关资源
最近更新 更多