4

我正在构建一个有趣的 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,/, "");
4

1 回答 1

10

Imgur 文档在 IMO 中有点差,但在 SO 中四处询问后,我发现这可行:

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 (我选择了“未经用户授权的匿名使用”选项)。

于 2013-08-10T14:40:38.940 回答