我是网络服务开发的新手。我正在开发一个Web服务,我需要在服务器上使用将从Android应用程序调用的Web服务上传图像。
我的问题是,当用户从Android设备中选择图像并点击上传按钮时,它会使用Base64类文件生成字符串。它的长度超过3000个字符。
因此,我需要减少使用Base64为图像生成的字符串的大小。
答案 0 :(得分:2)
根据定义,Base-64是固定大小的表示; n个字节的二进制文件总是m个字符base-64。您可以做的最多就是删除最后一个块的填充,这将为您节省最多3个字符。
如果您希望缩短有效负载,可以:
答案 1 :(得分:0)
一般来说,要减少数据大小而不丢失任何信息,您需要lossless compression。一个很好的起点可能是Android的built-in zip classes,但你仍然需要通过网络进行编码。
如果它是一个捕获的图像,那么改变JPEG压缩(或原始分辨率)的参数将证明更有用,因为您将获得类似JPEG的数据的压缩,然后是64-are可能很低。
答案 2 :(得分:0)
您需要先缩小实际图像尺寸才能减小base64尺寸。