使用 HTML5 File API 通过 Facebook Graph API 上传照片

发布于 2024-11-29 13:32:29 字数 760 浏览 1 评论 0原文

我正在尝试制作一个照片组织 Facebook 应用程序,而不使用服务器端进程。

现在我可以使用FileReader对象的readAsDataURL方法预览照片,例如...

var file = e.dataTransfer.files[0];
var reader = new FileReader();
reader.onload = function(e) {
        var imgObj = $(document.createElement('img')).attr('src',reader.result).appendTo('#image_preview_wrapper');
    };
    reader.readAsDataURL(file);
}, false);

问题是如何将图像数据发布到Facebook。 我正在尝试做类似的事情

var reader = new FileReader();
reader.onload = function(e) {
    var data = reader.result;
    FB.api('/me/photos','post',{ image : data },function(res){
        alert(res);
    });
}
reader.readAsBinaryString(file);

,在这种情况下,我无法设置 enctype="multipart/form-data" 并且收到 400 错误请求。

有人可以帮助我吗?

I'm trying to make a photo organizing Facebook application without using server-side process.

Now I can preview photos by using FileReader object's readAsDataURL method, such as...

var file = e.dataTransfer.files[0];
var reader = new FileReader();
reader.onload = function(e) {
        var imgObj = $(document.createElement('img')).attr('src',reader.result).appendTo('#image_preview_wrapper');
    };
    reader.readAsDataURL(file);
}, false);

The question is how to post the image data to Facebook.
I'm trying to do something like

var reader = new FileReader();
reader.onload = function(e) {
    var data = reader.result;
    FB.api('/me/photos','post',{ image : data },function(res){
        alert(res);
    });
}
reader.readAsBinaryString(file);

In this case, I can't set enctype="multipart/form-data" and I'm getting 400 Bad Request.

Can anybody help me?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文