Javascript 从FineUploader获取上传的文件信息
我正在我的应用程序中实现React版本的FineUploader,以将文件上载到Azure Blob存储 一旦我确定上传了文件,我需要将它们的信息保存在我的后端数据库中。我不想在数据库中注册文件信息,除非我知道这些文件在blob存储中。以下是我需要捕获的信息:Javascript 从FineUploader获取上传的文件信息,javascript,reactjs,fine-uploader,Javascript,Reactjs,Fine Uploader,我正在我的应用程序中实现React版本的FineUploader,以将文件上载到Azure Blob存储 一旦我确定上传了文件,我需要将它们的信息保存在我的后端数据库中。我不想在数据库中注册文件信息,除非我知道这些文件在blob存储中。以下是我需要捕获的信息: 原始文件名 分配的blobName或uuid 如果可以,文件大小信息也会非常有用,但这不是必须的 如果我正确阅读了文档,blobproperty似乎是我获取此信息的正确位置,但到目前为止,我还无法使其正常工作 在blobPropert
- 原始文件名
- 分配的
或blobName
uuid
- 如果可以,文件大小信息也会非常有用,但这不是必须的
blobproperty
似乎是我获取此信息的正确位置,但到目前为止,我还无法使其正常工作
在blobProperties
中,我不需要调用数据库来获取blobName。我可以分配一个简单的GUID
值,或者简单地捕获uuid
FineUploader正在分配的值。我只想捕获我需要的信息并将它们存储在我的Redux商店中
这就是我需要帮助的地方:
const uploader = new FineUploaderAzure({
options: {
blobProperties: function(id) {
// How do I get original file name here?
// If I can, I'd like to get file size as well.
// Once I know file's original name as well as the blobName assigned to it, I'll store them in my Redux store
},
cors: {
expected: true,
sendCredentials: false
},
signature: {
endpoint: 'http://myapp.com/api/getsas'
},
request: {
endpoint: 'https://myaccount.blob.core.windows.net/my-container'
},
callbacks: {
onComplete: function (id, name, responseJSON, xhr) {
myFunction(responseJSON);
}
}
}
})
const myFunction = (responseJSON) => {
// If upload is successful, I'll get file details from Redux store and call my action creators
// to trigger an API call to my backend so that I can register uploaded files in my database.
}
我希望您能给我一些关于如何获取我要查找的文件信息的提示。使用
onComplete
函数参数id
您可以使用fineUploader公开的方法检索所有内容,如
- getName
- 获取文件
- getSize
- getBlobName
onComplete: function (id, name, responseJSON, xhr) {
uploader.methods.getName(id);
uploader.methods.getSize(id);
uploader.methods.getBlobName(id);
myFunction(responseJSON);
}
我的理解是,您在服务器中构建json响应,如下所示:返回json(new{status=“success”,fileName=“MyFileName”});-你是如何建立你的响应的?我直接上传到Azure Blob存储,所以我不会在文件上传后点击我的服务器。我的想法是在点击完成后准备我的服务器请求,但可能我没有遵循规定的方式。为了进一步澄清,我的意图是在上传完成后捕获上传的文件信息,然后对我的服务器进行API调用,将上传的文件信息存储在我的后端数据库中。这不是正确的工作流程吗?非常感谢您的帮助!积分当之无愧!真的很感激!