怎么发了敢不敢爱见了

在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
用type为file的input发送图片到后台,传统的方法是直接使用一个form发送。现在就想用一个input来实现ajax发送,不知道post过去的实质内容是什么,如何取到这个内容
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
对于异步上传来说,如果仍想用文件直接上传方法的话,可以采用HTML5的FormData,具体操作可以参考这篇博客。
本人还有另外一种异步上传图片的方法。先将图片转换成base64字符串,然后再把base64字符串提交到服务器上,服务器接收后,可以再用具体的API将base64字符串转换成图片内容。以下为具体实现方法:
var getObjectURL = function(file) {
if (window.createObjectURL !== undefined) { // basic
url = window.createObjectURL(file);
} else if (window.URL !== undefined) { // mozilla(firefox)
url = window.URL.createObjectURL(file);
} else if (window.webkitURL !== undefined) { // webkit or chrome
url = window.webkitURL.createObjectURL(file);
getObjectURL方法用于将传入的input中的图片file对象,转换成一个临时的url,而这个url是同域的。
var converImgTobase64 = function(url, callback, outputFormat) {
var canvas = document.createElement('CANVAS'),
ctx = canvas.getContext('2d'),
img = new I
img.crossOrigin = 'Anonymous';
img.onload = function(){
canvas.height = img.
canvas.width = img.
ctx.drawImage(img,0,0);
var dataURL = canvas.toDataURL(outputFormat || 'image/png');
callback.call(this, dataURL);
converImgTobase64方法就是将上面所得到的url传入,通过canvasAPI转换成base64字符串,注意这个url必须是同域的,不可跨域,所以getObjectURL这个方法是很有必要的。
var input = $("input[type=file]")[0],
src = getObjectURL(input.files[0]);
converImgTobase64(src, function(base64Str) {
//处理base64Str相关的callback,可以直接在这里发送ajax请求。
这部分组件的代码在本人的一个util库中,欢迎参考并提出整改意见~~~
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:(Pandaaaaaa)
(Pandaaaaaa)
第三方登录:看到你们发的那种特矫情的帖子就想给你们删咯,可是我还不敢,怕被撕,,好气哦【济宁吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:784,078贴子:
看到你们发的那种特矫情的帖子就想给你们删咯,可是我还不敢,怕收藏
看到你们发的那种特矫情的帖子就想给你们删咯,可是我还不敢,怕被撕,,好气哦
北京专业汽车贴膜连锁,价格公道质量好,50万+车友的共同选择!
怂怂更健康
你说的肯定是张群吧,毛这么多还整天装女人
点亮12星座印记,
我发现你的个指桑骂槐的功力跟谁学的
楼上这种举动让我想起了小时候班里专门给班主任通风报信的班委,你们开心就好,我没事
谁敢斯你啊,薯片大妹子
你是第二个送过我贴吧小礼物的,虽然我至今还没搞懂那有啥用,还是得谢谢你,给你顶一下
承办方:丽江市体育局 丽江斐瑞康网络科技有限公司
哈哈,好气
登录百度帐号推荐应用

我要回帖

更多关于 敢不敢爱 的文章

 

随机推荐