开发者社区> 问答> 正文

oss支持直接从客户端提交base64编码保存图片吗

基于html5的一个web项目,目前想实现客户端的 图片 压缩 上传 ,前端技术只局限于js和html5. 通过html5的canvas处理调用其toDataURL获取到了缩放后图片的base64编码。当然,如果 己写 服务 端来保存图片是没有任何 问题 的。现在的问题是如何将编码过后的图片 信息 上传一些专门的云存储上(保存为jpg格式的图片),试过七牛和又拍云都是不行的.不知道 阿里 的行不行.

展开
收起
美家秀 2016-04-29 19:00:29 32233 0
12 条回答
写回答
取消 提交回答
  • Reoss支持直接从客户端提交base64编码保存图片吗
    参考别人的代码,拼凑了一个方法,测试可用
    // https://stackoverflow.com/questions/4998908/convert-data-uri-to-file-then-append-to-formdata
    // https://stackoverflow.com/questions/27553617/convert-blob-to-file
    // 转换图片 base64 => file
    function dataURItoFile(dataURI, fileName) {
      var byteString = atob(dataURI.split(',')[1]);
      var ab = new ArrayBuffer(byteString.length);
      var ia = new Uint8Array(ab);
      for (var i = 0; i < byteString.length; i++) {
       ia = byteString.charCodeAt(i);
      }
      // return new Blob([ab], { type: 'image/jpeg' });
      return new File([ia], fileName, {type: 'image/jpeg', lastModified: Date.now()})
    }



    2018-03-06 01:34:05
    赞同 展开评论 打赏
  • Reoss支持直接从客户端提交base64编码保存图片吗
    楼主成功实现这个功能了吗?我也遇到这个问题,和你的问题一样
    2017-11-11 16:34:09
    赞同 展开评论 打赏
  • Reoss支持直接从客户端提交base64编码保存图片吗
    mark

    -------------------------

    Reoss支持直接从客户端提交base64编码保存图片吗
    楼主这个问题最终是怎么解决的?
    2017-06-08 11:28:15
    赞同 展开评论 打赏
  • Reoss支持直接从客户端提交base64编码保存图片吗
    最后怎么解决的?
    2017-02-07 18:55:24
    赞同 展开评论 打赏
  • Reoss支持直接从客户端提交base64编码保存图片吗
    表示遇到同样的问题了,请问你解决了吗?
    2017-02-05 09:55:20
    赞同 展开评论 打赏
  • ReReoss支持直接从客户端提交base64编码保存图片吗
    引用第7楼div-wang于2016-11-18 16:29发表的 Reoss支持直接从客户端提交base64编码保存图片吗 :
    可以用new Blob把base64转成blob二进制文件,用formData提交数据;
    可以搜索Stack Overflow :Convert Data URI to File then append to FormData [url=https://bbs.aliyun.com/job.php?action=topost&tid=280174&pid=846247][/url]

    这个问题我也研究了很久,你有自己全过程试过吗?
    一真是困扰着我,不能直接传!
    2016-12-02 14:34:34
    赞同 展开评论 打赏
  • Reoss支持直接从客户端提交base64编码保存图片吗
    可以用new Blob把base64转成blob二进制文件,用formData提交数据;
    可以搜索Stack Overflow :Convert Data URI to File then append to FormData
    2016-11-18 16:29:27
    赞同 展开评论 打赏
  • oss 不支持用户直接上传base64编码 。
    2016-08-31 13:48:23
    赞同 展开评论 打赏
  • 回 4楼uniyes的帖子
    同,图像变成了base64 就没办法上传。。


    想问楼上上面的意思是已经有办法直接上传base64到阿里了么。求办法,。。

    对了,如果有办法的话,其实是不是jpg格式的图片都无所谓了,前端就可以获取列表,提取里面的base64来展现。
    2016-08-31 10:49:50
    赞同 展开评论 打赏
  • 回 2楼cc23的帖子
    你的问题解决了没》
    我现在也是遇到了这个问题。
    我的图片会被Canvas弄成Base64,
    然后就无法直接上传了。
    2016-08-20 15:34:51
    赞同 展开评论 打赏
  • 阿里云对象存储(OSS)开发工程师
    回 2楼(cc23) 的帖子
    目前还不行的,你上传的内容是什么oss就保存什么
    2016-05-30 22:38:56
    赞同 展开评论 打赏
  • 回 1楼西秦的帖子
    我试过直接传文件,是成功的。

    但是我的图片会被canvas处理成base64,上传就失败了。

    请问这种情况该怎么处理呢?
    2016-05-30 22:21:16
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载