0

我有一个 waffle lua Web 应用程序,我需要使用一些命令行工具来处理提交的视频文件。

问题是 req.form.file 上的 save 函数调用是异步的,因此在实际保存文件之前执行。

req.form.file:save{path=path}

当我在该路径上调用命令行工具 ffprobe 时,我收到指示无效数据的错误。在控制台中使用相同的命令可以按预期工作。

我的猜测是执行 ffprobe 调用时该文件尚未保存。

在 lua waffle 应用程序中继续执行其他命令之前,有没有办法确保将文件写入磁盘?

4

1 回答 1

1

我找到了一种方法来做到这一点,而不是使用 waffle 模块提供的异步方法,我使用了 build in lua io 模块来同步完成这项工作:

local out = assert(io.open(path, "wb"))
out:write(req.form.file.data)
于 2017-01-12T08:42:00.613 回答