2014-12-28 142 views
1

我讀過很多其他人的一半這個問題,並嘗試了他們的解決方案,但我無法得到它的任何地方。谷歌驅動器API上傳無法正常工作

我第一次運行的例子教程從谷歌的位置: https://campus.codeschool.com/courses/discover-drive/

然後我跑從這裏示例代碼: https://developers.google.com/picker/docs/index

運行與我的API和客戶端密鑰的代碼(我甚至產生新密鑰,嘗試僅使用.apps.googleusercontent.com作爲客戶端密鑰之前的部分,正如我在其他示例代碼中看到的那樣)等等,並獲得相同的結果。

的頁面加載,並要求允許訪問谷歌驅動器帳戶只要我給它恢復到下面的錯誤權限:

Jconsole Error

我有說無用窗口錯誤:

There was an error! The API developer key is invalid.

現在其他人都說這個錯誤是正常的,他們的代碼仍然有效。另一方面我的工作不正常,它給了我那個錯誤。

<script> 
    var clientId = '249642562982-8ss843cvik6r1rrm94i1kt5cf4jf201c.apps.googleusercontent.com'; 
    var developerKey = 'AIzaSyBeDBmIqzCYCNvrpSwXcLz6ido_qGZL6sg'; 
    var accessToken; 
    function onApiLoad() { 
    gapi.load('auth', authenticateWithGoogle); 
    gapi.load('picker'); 
    } 
    function authenticateWithGoogle() { 
    window.gapi.auth.authorize({ 
     'client_id': clientId, 
     'scope': ['https://www.googleapis.com/auth/drive'] 
    }, handleAuthentication); 
    } 
    function handleAuthentication(result) { 
    if(result && !result.error) { 
     accessToken = result.access_token; 
     setupPicker(); 
    } 
    } 
    function setupPicker() { 
    var picker = new google.picker.PickerBuilder() 
     .setOAuthToken(accessToken) 
     .setDeveloperKey(developerKey) 
     .addView(new google.picker.DocsUploadView()) 
     .enableFeature(google.picker.Feature.MULTISELECT_ENABLED) 
     .setCallback(myCallback) 
     .build(); 
    picker.setVisible(true); 
    } 
    function myCallback(data) { 
    if (data.action == google.picker.Action.PICKED) { 
     alert(data.docs[0].name); 
    } else if (data.action == google.picker.Action.CANCEL) { 
     alert('goodbye'); 
    } 
    } 
</script> 
<script src="https://apis.google.com/js/api.js?onload=onApiLoad"></script> 

Here are my keys

這是推動我瘋了!感覺就像我嘗試了一切,沒有任何工作。爲什麼Google會花費時間創建一個教程網站,並附帶全功能視頻課程,這些課程會檢查您的代碼的有效性,如果翻轉結果代碼不起作用!?取下視頻和示例代碼,如果它被破壞了!我一整天都在浪費。

任何人都可以幫我弄清楚這裏發生了什麼?

參考文獻:

How to upload file on google drive from my website?

Using Google Drive in an iFrame doesn't work

Google Drive Picker - Developer Key is Invalid Error

Google Drive API OAuth 2.0; Error: origin_mismatch

+0

我有完全相同的問題和相同的鍋爐板代碼。它必須是在api控制檯中的一些設置,但我無法弄清楚。 我已授予所有API(雲存儲,驅動器,選取器等)的訪問權限,並且我的密鑰看起來不錯。我認爲這可能與JavaScript的起源有關,但我已經添加了所有涉及的URL。神祕.. –

+0

你解決了這個問題嗎? – noogui

回答

0

我會建議使用this example。我也測試了這個例子,它爲我工作。您可以根據您的要求編輯範圍。