2015-03-16 4 views
0

Я пытаюсь проверить подлинность с помощью Google через OAuth, и это мой кодПочему этот основной пакет называется?

my.fetchTokens = function(code) { 

    var endpoint = 'https://accounts.google.com/o/oauth2/token'; 
    var params = { 
     code: code, 
     client_id: Meteor.settings.google.CLIENT_ID, 
     client_secret: Meteor.settings.google.CLIENT_SECRET, 
     redirect_uri: Meteor.settings.google.REDIRECT_URL, 
     grant_type: 'authorization_code', 
    }; 

    try { 
     response = HTTP.post(endpoint, { params: params }); 
    } catch (err) { 
     throw _.extend(new Error("Failed to complete OAuth handshake with Google. " + err.message), 
        {response: err.response}); 
    } 

    if (response.data.error) { // if the http response was a json object with an error attribute 
     throw new Error("Failed to complete OAuth handshake with Google. " + response.data); 
    } 

    var tokens = { 
     accessToken: response.data.access_token, 
     refreshToken: response.data.refresh_token, 
     expiresIn: response.data.expires_in, 
     idToken: response.data.id_token 
    }; 
    console.log(tokens); 
    return tokens; 
    }; 

сервер Но когда я вызвать этот метод, я получаю следующие предупреждения

W20150316-10:30:05.853(1) (oauth_server.js:71) Unable to base64 decode state from OAuth query: undefined 
W20150316-10:30:05.854(1) (oauth_server.js:71) Unable to base64 decode state from OAuth query: undefined 
W20150316-10:30:05.855(1) (oauth_server.js:71) Unable to base64 decode state from OAuth query: undefined 
W20150316-10:30:05.855(1) (oauth_server.js:398) Error in OAuth Server: Match error: Expected string, got undefined 

Но я не понимаю, почему oauth_server.js:71 ссылается

любые идеи?

ответ

0

Возможно, потому что вы звоните OAuth.openSecret или OAuth._redirectUri('google', config).

Я предполагаю, что один из этих вызовов анализирует текущий URL.

+0

Нет, я поменял их на это все еще случается – Tarlen

Смежные вопросы