2017-03-14 81 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/)我創建這種類型的帳戶:「匿名用戶沒有用戶授權」 –

相關問題