我们将前端作为Google PWA应用程序,并将REST API置于后端。我们需要将一些由PWA用户选择的非常大的图像发送到后端(数十兆字节大小)。当前,PWA用户从手机文件系统中选择一个图像(因此,他可以在PWA UI的手机屏幕上看到该图像),然后按“上传”按钮以通过REST API将其发送到后端。
为了真正快速地实现此功能,我们通过网络发送了base64格式的图像数据,并将其以相同的格式作为字符串存储在DB字段中。
现在,我们决定摆脱base64编码文件的发送,在后端,我实现了library(ShortRead)
fq <- FastqFile("/Users/path/to/file")
reads_fq <- readFastq(fq)
trimmed_fq <- reads_fq[grep("GGGGGGGG|TTTTTTTTT|AAAAAAAAA|CCCCCCCCC",sread(reads_fq),invert = TRUE)]
writeFastq(trimmed_fq,"new_name_for_fq.fastq",compress = FALSE)
的二进制格式为was advised on this site many times的接收,并将其存储在类型为multipart/form-data
的DB字段中。 非常好!
但是,由于某种原因,我们的前端开发人员告诉我他无法简单地获取二进制图像数据,因为PWA UI从文件系统加载后将其转换为base64本身。 UI DOM模型仅以这种格式将图像保留在bytea
元素中。因此,要将数据从UI发送到后端,他需要事先进行base64解码。
我的问题是如何在没有base64编码的情况下在UI中以二进制格式显示图像,或者如何避免同时将base64和二进制数据保留在前端(请记住我们的图像大小为几十兆字节)?