分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

客户端通过base64上传bitmap服务器

发布时间:2023-09-06 01:57责任编辑:顾先生关键词:base64

首先致谢:http://www.jb51.net/article/129743.htm

咱们不是代码的生产者,只是代码的搬运工。

场景描述:Android客户端需要上传头像等图片到服务器,经双方协商决定采用base64方式上传。但是客户端直接将bitmap转成base64上传,服务端却无法解析。

问题剥析:经查验,发现客户端直接上传的base64,缺少头文件,导致服务器无法解析。

头文件格式:data:image/*;base64, +base64字符串 //*替换成客户端转换的png/jpg/jpeg等格式

尝试解决:

  思路一:接口添加字段,客户端需要上传格式字段    ——缺点:接口复杂化,多字段,不利于维护

  思路二:双方约定一个格式,使用统一格式编码解码   ——缺点:接口限制性太高,缺少灵活性

  思路三:直接在客户端对于生成的base64字符串进行拼接  ——优点:只需要在客户端进行额外处理接口,不必改动接口

data:image/*;base64, +base64字符串 //*替换成客户端转换的png/jpg/jpeg等格式

最终方案:采用思路三,考虑到复用性问题,直接在工具类中统一完成拼接,得到完美解决。

附:

 1 /** 2 ?* 通过Base64将Bitmap转换成Base64字符串 3 ?* @param bit 4 ?* @return 5 ?*/ 6 public String Bitmap2StrByBase64(Bitmap bit){ 7 ???ByteArrayOutputStream bos=new ByteArrayOutputStream(); 8 ???bit.compress(CompressFormat.JPEG, 40, bos);//参数100表示不压缩 9 ???byte[] bytes=bos.toByteArray();10 ???return Base64.encodeToString(bytes, Base64.DEFAULT);11 }
通过Base64将Bitmap转换成Base64字符串

客户端通过base64上传bitmap服务器

原文地址:https://www.cnblogs.com/lizhilin2016/p/9122530.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved