使用数据 URI 将图像上传到使用 Java(PlayFramework-2.6 或纯 Java)的服务器
Posted
技术标签:
【中文标题】使用数据 URI 将图像上传到使用 Java(PlayFramework-2.6 或纯 Java)的服务器【英文标题】:Upload image using data URI to server with Java (PlayFramework-2.6 or Plain Java) 【发布时间】:2019-02-05 09:23:28 【问题描述】:我正在使用 AJAX 请求从网页传递图像。图像作为数据 URI 传递给 Java 函数,如下所示。
public Result upload()
String dataUri = request().body().asText();
System.out.println(dataUri);
File file = dataUri;
return ok("File uploaded");
我遇到的问题是我认为我需要将数据 URI 转换为文件对象才能将其传递给“文件文件 =”。如果我能做到这一点,那么图像将被上传到服务器。有接盘侠吗?
【问题讨论】:
编译/运行时遇到什么错误?您研究过如何将数据 URI 转换为 File 对象吗? 我研究了很多,但还没有找到可行的解决方案,我得到的错误是“预期的 java.file.io”,但得到了字符串或类似的东西。 我不知道你的数据是什么格式,但由于它是图像,我假设它是 base64。我刚刚阅读了en.wikipedia.org/wiki/Data_URI_scheme,似乎您需要使用一些字符串操作或数据 URI 库提取 base64 编码的二进制文件,然后解码为二进制文件以写入文件。 (第一次 google 搜索在 java 中写入 File 对象:baeldung.com/java-write-to-file) 裁剪并上传!我在 *** 上找到了另一个链接,该链接向我展示了如何将 base64 图像转换为文件。我已成功将裁剪后的文件加载到服务器上的目录中。谢谢你的帮助!!有答案的链接在这里:***.com/questions/23979842/… 【参考方案1】:裁剪并上传!我在 *** 上找到了另一个链接,该链接向我展示了如何将 base64 图像转换为文件。我已成功将裁剪后的文件加载到服务器上的目录中。谢谢你的帮助!!有答案的链接在这里: Convert base64 string to image
【讨论】:
以上是关于使用数据 URI 将图像上传到使用 Java(PlayFramework-2.6 或纯 Java)的服务器的主要内容,如果未能解决你的问题,请参考以下文章
将图像上传到 Firebase 存储后如何获取图像 uri?