2015-01-09 89 views
0

背景: 我正在使用Google client.js訪問我創建的雲端點項目。 當代碼執行,並返回應該顯示認證確認的IFRAME,我得到的錯誤Google client.js Oauth2拒絕顯示iFrame

拒絕顯示「......」在一個框架,因爲它設置「X型框架,選項'到'SAMEORIGIN'。

我知道這是一個安全功能,以防止惡意sideload的內容,但我似乎無法弄清楚我出錯的地方。

var CLIENT_ID = "this is my id"; 
var SCOPES = "https://www.googleapis.com/auth/userinfo.email"; 

function init() { 
    var apisToLoad; 
    var loadCallback = function() { 
     if (--apisToLoad == 0) { 
      signin(true, userAuthed); 
     } 
    }; 

    apisToLoad = 2; // must match number of calls to gapi.client.load() 
    apiRoot = '//' + window.location.host + '/_ah/api'; 
    gapi.client.load('business', 'v1', loadCallback, apiRoot); 
    gapi.client.load('oauth2', 'v2', loadCallback); 
} 

signin = function(mode, callback) { 
    gapi.auth.authorize({client_id: CLIENT_ID, 
      scope: SCOPES, immediate: mode}, 
     callback); 
}; 

function userAuthed() { 
    var request = 
     gapi.client.oauth2.userinfo.get().execute(function(resp) { 
      if (!resp.code) { 
       // User is signed in, call my Endpoint 
       gapi.client.business.retrieve().execute(function(resp) { 
        console.log(resp); 
       }); 
      } 
     }); 
} 

回答

0

原來我使用的是錯誤的API密鑰。如果遇到此問題,請使用適當的api鍵。