[英]NodeJS app with http-auth crashes after Webpack5
我有一個大型 NodeJS 應用程序,在經過 Webpack-5 處理后一直運行良好。 現在我添加了 http-auth,然后應用程序崩潰了。
在https://github.com/MorganLindqvist/webpack5-http-auth-failure上,您可以找到一個非常簡約的應用程序版本,該版本在 Webpack5 之后執行時會崩潰。
這是它何時工作(沒有 webpack 5)和崩潰時(使用 webpack 5)的示例。
git clone https://github.com/MorganLindqvist/webpack5-http-auth-failure.git
cd webpack5-http-auth-failure
npm install
node src/index.js
這可以正常工作,沒有任何重要的事情發生。 但是,如果使用 webpack5,它不起作用,而是崩潰。
npm run build_dev
node dist/main.js
錯誤信息如下:
類型錯誤:找不到來自@node-rs/bcrypt-linux-x64-gnu、@node-rs/bcrypt-linux-x64-gnux32、@node-rs/bcrypt-linux-x64-musl 和 /home 的節點綁定文件/user/webpack5-http-auth-failure/dist/bcrypt.linux-x64-gnu.node, /home/user/webpack5-http-auth-failure/dist/bcrypt.linux-x64-gnux32.node, /home /user/webpack5-http-auth-failure/dist/bcrypt.linux-x64-musl.node
安裝 http-auth 時,我收到一些如下所示的警告:
npm WARN 可選跳過可選依賴項:@node-rs/bcrypt-android-arm64@1.2.1 (node_modules/@node-rs/bcrypt-android-arm64):npm WARN notsup 平台支持不支持/bcrypt-android-arm64@1.2.1: 想要 {"os":"android","arch":"arm64"} (當前: {"os":"linux","arch":"x64"})
現在我的問題是:這是 http-auth、webpack5 中的錯誤還是我這邊的錯誤?
我一直在嘗試了解警告和錯誤,但在搜索類似問題時沒有發現任何有用的信息。
正如我所說,我有一個大項目,它崩潰時的錯誤與我刪除 index.js 中除以下幾行之外的所有內容時完全相同。
const auth = require("http-auth");
const basic = auth.basic({
realm: "Docker registry",
file: __dirname + "/../htpasswd"
});
碰巧,我今天遇到了這個問題,並找到了您的問題,試圖找到解決方案。
在嘗試了一些不同的事情之后,我發現使用 http-auth 的 4.1.2 版本(而不是當前的 4.1.4,這是您的 package.json 在您的 ZD3B7C913CD04EBFECZ0E9EC3 中設置的) 所以這似乎是較新的 http-auth 版本的錯誤。 我在您的 github 存儲庫中運行了您的代碼,但使用的是 http-auth 版本 4.1.2,它運行成功。
我遇到了同樣的問題,http-auth 的 4.1.5 版本解決了這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.