Причина, по которой выдается ошибка, связана с изменением Node.js 12 . Начиная с версии 12, настройки TLS были ужесточены, и TLS 1.2 требуется по умолчанию. Подпрограммы SSL: ssl_choose_client_version: неподдерживаемый протокол ошибка будет выдана, если сервер SQL Сервер не поддерживает TLS 1.2 .
In Узел , можно изменить настройку по умолчанию, используя флаг командной строки --tls-min-v1.0
при запуске узла. Поскольку NW не имеет возможности передать флаг командной строки в контекст Node , решение состоит в том, чтобы установить пользовательскую опцию cryptoCredentialsDetails
в конфигурации соединения, которая задает minVersion: 'TLSv1'
, например:
mssql.connect({
user: "this.user",
password: "this.password",
server: "this.server",
database: "this.database",
options: {
cryptoCredentialsDetails: {
minVersion: 'TLSv1'
}
}
});