使用javascript将画布图像上传到imgur(api v3)

时间:2013-07-23 08:47:00

标签: javascript api google-chrome imgur

我正在构建一个有趣的Chrome实验。胡子镜! http://sjoerddijkstra.nl/cam/ 我想使用Imgur API V3将图像从te canvas上传到Imgur,然后显示链接,但我真的不知道如何。我找到的所有工作示例都使用V2 API ...

我使用canvas.toDataURL:

var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");

1 个答案:

答案 0 :(得分:8)

Imgur文档有点可怜的IMO但在询问了我之后我发现这个工作:

try {
    var img = document.getElementById('myCanvas').toDataURL('image/jpeg', 0.9).split(',')[1];
} catch(e) {
    var img = document.getElementById('myCanvas').toDataURL().split(',')[1];
}

$.ajax({
    url: 'https://api.imgur.com/3/image',
    type: 'post',
    headers: {
        Authorization: 'Client-ID <CHANGE_THIS_TO_BE_YOUR_CLIENT_ID>'
    },
    data: {
        image: img
    },
    dataType: 'json',
    success: function(response) {
        if(response.success) {
            window.location = response.data.link;
        }
    }
});

<CHANGE_THIS_TO_BE_YOUR_CLIENT_ID>替换为您在注册应用时获得的客户端ID here(我选择了“未经用户授权的匿名使用”选项)。