java - 如何将客户端发送的Base64图像存储在BlobStore中

标签 java google-app-engine jersey blob blobstore

我对 BlobStore 非常陌生,我从客户端收到 Base64 图像 我这样转换它:

byte [] picByte = Base64.decodeBase64(pic);
Blob blob = new Blob(picByte);

我正在使用 jersey 2,我的目标是保存这张图片并稍后获取服务链接 blobstoreService.serve

如何保存这张带有 Jersey 2 的图像? 谢谢,

最佳答案

    byte[] picByte = Base64.decodeBase64(pic);
    GcsFileOptions instance = new GcsFileOptions.Builder().mimeType("image/jpeg").build();
    GcsFilename fileName = new GcsFilename("xxx-app.appspot.com", "someName.jpg");
    GcsOutputChannel outputChannel;
    GcsService gcsService = GcsServiceFactory.createGcsService();
    outputChannel = gcsService.createOrReplace(fileName, instance);
    ByteBuffer a = ByteBuffer.wrap(picByte);
    outputChannel.write(a);
    outputChannel.close();

关于java - 如何将客户端发送的Base64图像存储在BlobStore中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42648721/

相关文章:

java - JPedal getPageAsImage() 返回不完整的图像

python - Google AppEngine 启动时间

Java jersey 导入包

java - OpenCSV 无法读取 Jersey2 创建的 InputStream

java - 尝试每个标准 lib 选项后从 java 执行 sudo 命令

java - JPA/Hibernate:在复杂类上使用AttributeConverter时创建UserType是否明显?

javascript - Google Drive SDK 示例 python DrEdit 不工作(身份验证时闪烁,未显示编辑器)

java - GAE/J - JPA 错误 - 类型 ("")不是实体的,但需要用于此操作

java - 如何访问aspectj中的私有(private)变量

java - 安装 JDK 时出错