2 zhaojiajia88 Zhaojiajia88 于 2016.09.20 16:21 提问

js本地图片剪裁后和表单一起提交到服务器,剪裁后图片为base64编码字符串,或者Blob二进制对象

公司有这样一个需求:
1、用js上传一个对象信息,对象包含名称,价格,图片等;
2、上传图片的时候需要先剪裁图片,然后和其他信息一起上传;
3、图片不能单独上传,只能从本地剪裁好后一起上传。
描述:
我现在已经在本地将图片剪裁好了,但是图片是一个base64编码的图片,直接将这个上传会出现问题,因为base64字符串太长,所以我将base64转为blob类型。

问题:
1、我可以直接上传这个blob吗?
2、如果可以,那服务器是不是可以解析这个blob?
3、如果我想的解决方案不能解决,那有没有什么更好的解决方案?
先谢谢各位,因为我是写iOS的,结果公司要我写网页,真的蛋疼...

1个回答

showbo
showbo   Ds   Rxr 2016.09.20 17:04

base64不是好好的,转来干嘛。你要存为图片服务器端可以讲base64转为2进制然后存图片文件就行

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
PHP处理Form表单提交的裁剪后的base64的图片并保存 以cropbox.js控件为例
我在开发项目的时候,前端给的上传头像插件是 cropbox.js ,当时觉得很好用,可是当要保存图片的时候问题来了,不知道怎么保存,百度了一大堆,发现很多人跟我一样也没有找到方法,不过思路都是一样的,把base64图片的路径转码再保存就可以了。我用的是ThinkPHP框架,下面直接亮代码,以我自己的实例来介绍: HTML代码: Loading... 上传图像
js将图片转为base64编码 && js将base64编码图片转为Blob格式
将图片转为base64编码格式function convertImgToBase64(url, callback, outputFormat){ var canvas = document.createElement('CANVAS'), ctx = canvas.getContext('2d'), img = new Image(); img.crossOrigin = '
JavaScript——图片base64编码转化成blob对象
function convertImgDataToBlob(base64Data) { var format = "image/jpeg"; var base64 = base64Data; var code = window.atob(base64.split(",")[1]);
base64转blob Ajax上传文件,服务器端接收不到
function convertBase64UrlToFileOrBlob(dataURI,type=0) { var arr = dataURI.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]),fileExt = mime.split('/')[1], n = bstr.length, u8arr
base64图片转file文件提交
/**  * @param base64Codes  *            图片的base64编码  */ function sumitImageFile(base64Codes){     var form=document.forms[0];          var formData = new FormData(form);   //这里连带form里的其他参数也一起提交
base64与Blob互转以及Blob下载
当下载canvas生成的base64图片,当图片过大时会失败。这是我们可以把base64图片转成Blob二进制文件再下载~ //**dataURL to blob** function dataURLtoBlob(dataurl) { var arr = dataurl.s
javascript将base64编码的图片数据转换为file并提交
/** * @param base64Codes * 图片的base64编码 */ function sumitImageFile(base64Codes){ var form=document.forms[0]; var formData = new FormData(form); //这里连带form里的其他参数也一起提交了,如果不需要
C#MVC和cropper.js实现剪裁图片ajax上传的弹出层
首先使用cropper.js插件,能够将剪裁后的图片返回为base64编码,后台根据base64编码解析保存图片。很使用的例子,适合图片剪裁上传
前端图片转base64,转格式,转blob,上传的总结
1. 图片文件转base64 $(function() { $("#up").change(function() { var file = this.files[0]; if(undefined == file){ return ; } r = new FileReader(); r.readAsDataURL(file
取出数据库中BASE64编码后的图片二进制流数据显示在JSP页面上
1.创建一个maven的web项目,加入oracle10/postgresql9.4驱动包依赖(本项目使用两种数据源进行测试) 依赖如下<!-- Oracle驱动包 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc14</artifactId> <version>10.2.0.2.0</vers