我有一个React web应用程序,允许用户将DICOM文件上传到Google Healthcare API。当前的实现是,文件首先被上传到我的后端服务器,后者将它们上传到Healthcare API。我允许用户上传完整的DICOM研究(100MB-2+GB(,该研究可以包含1-500多个DICOM文件(每个文件通常为50KB-50MB(。到目前为止,我们目前的方法是有效的,但随着我们的扩展,它似乎没有充分利用我的服务器。
我的目标是允许用户从React应用程序直接上传到谷歌云存储桶。我想在将其导出到Google Healthcare API之前执行一些验证逻辑。我已经查看了签名的url,但由于上传的文件是医学图像,我不确定它们是否足够安全。用户不一定有谷歌账户。
我能让用户在不经过我的服务器的情况下直接将目录上传到GCS bucket的最佳方式是什么?如果用户上传了病毒,这种方法是否有危险?此外,签名的url在一定时间内有效,我可以在上传完成后立即停用签名的url吗?
我过去曾将Transloadit用于类似的用例,并且我有很好的体验。对于您的特定情况,请使用:https://transloadit.com/demos/file-exporting/export-to-google-store/.
这将按需扩展,还允许您构建一个管道来执行任何您想要的预处理,例如您所关心的病毒扫描。
他们预定义处理服务的完整列表:https://transloadit.com/services/
他们有一个相当不错的免费等级,但基于你的担忧,你可能需要一个高级等级。