我是否需要通过授权才能使用Imgur API?

时间:2017-03-14 11:12:55

标签: javascript api oauth-2.0 imgur fetch-api

我是API的新手,特别是Imgur API,网站上的示例可能对有经验的人来说很清楚。我觉得我需要填补空洞,但我不清楚。我这样做:

let form = document.querySelector("#img-form");

form.addEventListener("submit", function(event) {
    event.preventDefault();
    // Get the file data.
    let f = form.querySelector("[name=\"file\"]").files[0];

    let fr = new FileReader();
    fr.readAsDataURL(f);
    fr.addEventListener("load", () => {
        post(fr.result);
    }); 
});



let post = function(data) {
    // Create a new request.
    let request =
        new Request(
            'https://api.imgur.com/3/image',
            {
                method: 'POST',
                body: {
                    image: data
                },
                headers: new Headers({
                    'Content-Type': 'text/plain'
            })      
        });

    fetch(request)
        .then(res => {
            if (res.status == 200) console.log(res.json());
            else throw new Error('Something wrong with API');
        })
        .catch(err =>{
            console.error(err)
        });
}

一切看起来都很好,除了api说 401(未经授权),我对这个东西太愚蠢了,在上传之前是否有某种身份验证?有人可以帮我发一些循序渐进的教程链接。

1 个答案:

答案 0 :(得分:2)

您缺少Auth标头

'Authorization': 'Client-ID YOUR_CLIENT_ID'

对于匿名上传图片,您需要注册申请 Imgur OAuth 2.0 documentation