SQL Server 连接问题,通过使用 sequalize 和 encryptset 为 true

问题描述

我一直在我的 (Windows) 机器上本地处理 NodeJS 项目,该项目使用 Sequelize 连接到 sql 服务器数据库。它在我的本地机器上运行良好,但是当我将它上传到 Azure Web 应用程序时,我在每个请求中都会收到以下错误..

无法连接到 x.x.x.x:1433 - 套接字挂断(IP 地址由我替换为 X)

代码是相同的,我已经检查过数据库没有 IP 限制,它是完全开放的。我还检查了环境变量(用户名/密码等)是否相同并在生产中正确加载。事实上,我的日志显示连接尝试是相同的。

唯一使它起作用的是删除 Sequelize/繁琐选项 {encrypt:true}。

所以,需要明确的是,加密连接可从本地主机运行,但不能从 azure Web 应用运行。

我真的不知道为什么会这样,所以任何建议都会有所帮助,即使它们只是为我指明了正确的方向。

这是我的续集设置。显然,我已经编辑了主机 IP 地址和登录详细信息,但目前开发和生产中的它们是相同的。

{

    'production': {
        'username': xxx,'password': xxx,'database': xxx,'host': xxx,'dialect': 'mssql','dialectOptions': {
            'options': {
                'encrypt': true,'multipleStatements': true,'validateBulkLoadParameters': false
            }
        },'omitNull': true,'pool': {
            'max': 100,'min': 0,'acquire': 30000,'idle': 10000
        },'logging': false
    },'development': {
        'username': xxx,'validateBulkLoadParameters': false,'debug': {
                    'packet': true,'data': true,'payload': true,'token': true
                }
            }
        },'logging': false
    }

}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)