我刚刚在Azure上部署了一个Node.js网络应用程序,似乎无法连接到同一区域的Azure SQL Server。
我检查了以下内容:
- SQL服务器防火墙:我启用了对Azure服务(以及为了安全起见,Web应用程序IP)的访问权限
- Web日志:没有什么异常,服务器正常工作,但是任何涉及查询的操作都会超时而不报错
- 本地部署:在本地运行应用程序(
node app.js
)可以直接使用
该应用程序使用Sails.js和sails-mssql
适配器。
编辑:我还尝试了一个连接到数据库的虚拟应用程序,并在成功检索到行(Table.findOne().then()
)后返回一个响应。第一次,它可以正常工作(尽管延迟30秒)。之后,加载页面时就只是一个超时错误或502错误。
编辑2:看起来sails-sqlserver
有问题,它捆绑了一个已知与Azure SQL v12不兼容的mssql
版本(请参见这里)。我通过npm-shrinkwrap
强制更新到mssql
2.3.1,但仍无法正常工作。
我还能检查什么问题吗?我已经没有更多的想法了。