Я работаю над чистой Windows 10 установкой. При попытке запустить npm install sqlite3
из myproject
path выдается следующая ошибка:
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: unable to get local issuer certificate
gyp ERR! stack at TLSSocket.onConnectSecure (_tls_wrap.js:1474:34)
gyp ERR! stack at TLSSocket.emit (events.js:310:20)
gyp ERR! stack at TLSSocket._finishInit (_tls_wrap.js:917:8)
gyp ERR! stack at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:687:12)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--module=C:\\dev\\source\\myproject\\node_modules\\sqlite3\\lib\\binding\\node-v72-win32-x64\\node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=C:\\dev\\source\\myproject\\node_modules\\sqlite3\\lib\\binding\\node-v72-win32-x64" "--napi_version=5" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v72" "--python=C:\\Python27" "--msvs_version=2017"
gyp ERR! cwd C:\dev\source\myproject\node_modules\sqlite3
gyp ERR! node -v v12.16.2
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --module=C:\dev\source\myproject\node_modules\sqlite3\lib\binding\node-v72-win32-x64\node_sqlite3.node --module_name=node_sqlite3 --module_path=C:\dev\source\myproject\node_modules\sqlite3\lib\binding\node-v72-win32-x64 --napi_version=5 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72 --python=C:\Python27 --msvs_version=2017' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (C:\dev\source\myproject\node_modules\sqlite3\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:310:20)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1021:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
node-pre-gyp ERR! System Windows_NT 10.0.17134
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\dev\\source\\myproject\\node_modules\\sqlite3\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:\dev\source\myproject\node_modules\sqlite3
node-pre-gyp ERR! node -v v12.16.2
node-pre-gyp ERR! node-pre-gyp -v v0.11.0
node-pre-gyp ERR! not ok
Я уже пробовал какое-то решение, например strict-ssl=false
, но не нашел решения, которое будет работать для меня и до сих пор не понимаю, что является root причиной этой ошибки.
Я также попытался установить предыдущую версию на sqlite3 и получил:
node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.1/node-v72-win32-x64.tar.gz
node-pre-gyp http unable to get local issuer certificate (falling back to source compile with node-gyp)
Поэтому я попытался сделать прямой GET-запрос на это, изменив версию с v3.1.1
на v4.1.1
и обнаружив следующее:
При выполнении запроса с SSL certificate verification
равен on
, запрос завершается неудачно, а когда off
успешно и загружает файл.
Мой вывод: есть проблема с проверкой сертификата в этом пакете, и почтальон знает, как его обработать, вопрос в том, как обработать его на npm, в частности при работе на windows.