我对Node和JavaScript相当新,现在我正在开发一个简单的文件上传站点 .

为此,我使用Uppy作为上传工具,但我仍然在努力解决如何以最佳方式连接Node和Uppy .

到目前为止,我已经使用配置创建了一个uppy.js文件,然后我使用browserfy将其嵌入到我的视图中 .

const Uppy = require('@uppy/core');
const AwsS3Multipart = require('@uppy/aws-s3-multipart');
const Dashboard = require('@uppy/dashboard');

const uppy = Uppy();

uppy.use(AwsS3Multipart, {
    limit: 4,
    serverUrl: 'http://localhost:3020/'
});

uppy.use(Dashboard, {
    trigger: '#select-files'
});  

uppy.on('upload-success', (file, resp, uploadURL) => {
    static.getFileInfo(file);
});

我还在我的app.js文件中添加了Uppy和Companion:

[...]

const companion = require('@uppy/companion');

const options = {
    providerOptions: {
        s3: {
            getKey: (req, filename) => filename,
            key: 'XXX',
            secret: 'XXX',
            bucket: 'XXX',
            region: 'eu-central-1'
        }
    },
    server: {
        host: 'localhost:3020',
        protocol: 'http',
    },
    filePath: '/public/uploads',
    secret: 'XXX'
};
  
app.use(companion.app(options));

app.listen(3020);

上传工作正常,文件名正确传递到控制台 .

但是,我不知道如何在Node后端使用此文件 . Uppy只在前端执行,所以我无法访问文件变量 . 但是如果我在后端包含Uppy,我就不能使用DOM元素,它会引发错误 . 所以无论哪种方式都错了 . 我还没有找到任何好的教程来解释我们应该如何在Node中连接前端和后端 . 这是非常基本的,我只是不明白,任何帮助或解释将不胜感激 .