2017-03-14 62 views
-1

我完全陌生于API,特别是Imgur 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(未授权),我对这个东西太愚蠢,是有一些种类的认证上载之前那张?有人能帮我发送一些一步一步教程的链接。

+2

您是否尝试过[阅读文档(https://api.imgur.com/oauth2) ? – JJJ

+0

是的,我做到了,但我无法理解。 –

+0

对不起,但我不相信你努力了。在阅读了几页文档之后,您将不会问是否需要进行身份验证,这些文档都是关于如何进行身份验证以使用API​​的。 – JJJ

回答

2

你缺少验证头

'Authorization': 'Client-ID YOUR_CLIENT_ID' 

上传图片匿名你需要注册你的应用程序 Imgur OAuth 2.0 documentation

+0

非常感谢您的帮助! –

+0

它仍然说401兄弟,我注册并获得客户端ID和客户端的秘密,它说我可以上传图像是匿名的,我选择了图像API,没有回电url的FYI。 –

+0

在这里试试这个[imgur uploader](http://jsfiddle.net/nullandv0id/FGxGg/)我创建这种类型的帐户:“匿名用户没有用户授权” –

相关问题