首頁  >  問答  >  主體

openssl錯誤堆疊:

<p><pre class="brush:php;toolbar:false;">opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' }</pre> <p>當我切換到節點 v18 時出現此錯誤</p>
P粉851401475P粉851401475421 天前457

全部回覆(2)我來回復

  • P粉988025835

    P粉9880258352023-08-25 00:33:37

    在終端機上的目前應用程式目錄中執行下列步驟:

    npm install -g npm-check-updates

    全域安裝 npm-check-updates 軟體包,以準確執行其名稱所示的操作。

    ncu

    這將並排顯示依賴項及其新版本(建議您升級到)(箭頭指向)目前目錄中的 package.json 檔案中列出的版本。

    ncu -u

    這會更新您的 package.json 檔案中列出的新版本,並為您的應用程式下一步做好準備(正確的更新)。

    npm update

    npm install

    這兩個最終都會安裝新的更新;解決了問題。


    注意:我用過

    npm install

    我使用從 github 克隆的舊的 React.js 應用程式遇到了這個問題,但不想降級到舊的節點版本,因為我剛從節點 v14 升級到 v18.13.0。再次強調,降級並不是安全明智的選擇。更新的原因有很多;大多數時候,“安全原因”,尤其是在 JavaScript 世界中。

    回覆
    0
  • P粉505450505

    P粉5054505052023-08-25 00:15:16

    現在有兩個選項 -

    1. 嘗試解除安裝 Node.js 版本 17 並重新安裝 Node.js 版本 16

    您可以從其官方網站重新安裝目前的 LTS Node.js 版本。或從此處下載更多具體內容;

    您可以使用NVM(節點版本管理器)

    • Linux 和 Mac 用戶可以使用此 nvm 軟體包連結
    • Windows 使用者可以使用此 nvm 軟體包連結
    1. #打開終端機並按照說明貼上這些內容:

    Linux 與 macOS (Windows Git Bash)-

    export NODE_OPTIONS=--openssl-legacy-provider

    Windows 命令提示字元-

    set NODE_OPTIONS=--openssl-legacy-provider

    Windows PowerShell-

    $env:NODE_OPTIONS = "--openssl-legacy-provider"

    回覆
    0
  • 取消回覆