如何从asar存档提供静态文件

Pet*_*ans 6 javascript express electron asar

我正在尝试构建一个带有服务器组件的电子应用程序,使用express进行远程控制.

快递模块初始化为

var staticPath = path.resolve('app/assets')

setupNotifications(server);

app.use(cors());
app.use('/api/', json());
app.use('/api/', router);
app.use('/assets', express.static(staticPath));
console.log('serving static files from : ' + staticPath);
Run Code Online (Sandbox Code Playgroud)

ELECRON文档提的是,当前的工作目录不能设置在ASAR存档的文件夹.错误消息表明正在尝试从安装的根文件夹下的"app/assets"读取文件,这可以确认这一点.

如何告诉express从ASAR档案中读取文件?我该如何做到这一点,以便我可以使用"爆炸"存档进行开发并使用内置存档进行部署?

Nic*_*fte 0

我有同样的问题。它使用相对路径对我有用。Express 提供的静态文件与 Express 初始化的文件保存在同一目录中。下面您可以看到我的工作代码片段:

const myStaticPath = './static'
app.use('/previewer', express.static(path.join(__dirname, myStaticPath)))
Run Code Online (Sandbox Code Playgroud)

干杯! 尼库