2016-09-28 174 views
2

此代碼用於工作,但現在我在嘗試驗證時出現錯誤。這是一個簡單的例子,所以你可以重新創建問題。這是一個使用最新版本的firebase模塊(3.4.1)的Node腳本。無法使用GitHub個人訪問令牌驗證Firebase

我剛剛生成了一個啓用了所有權限的新GitHub個人訪問令牌。我仍然遇到同樣的錯誤。

var firebase = require('firebase'); 
var config = { 
    apiKey: "REDACTED", 
    authDomain: "REDACTED", 
    databaseURL: "REDACTED", 
    storageBucket: "REDACTED", 
    messagingSenderId: "REDACTED" 
}; 
firebase.initializeApp(config); 

var credential = firebase.auth.GithubAuthProvider.credential('REDACTED'); 
firebase.auth().signInWithCredential(credential) 

這裏的錯誤:

{ 
    "error":{ 
     "errors":[ 
     { 
      "domain":"global", 
      "reason":"invalid", 
      "message":"Unsuccessful check authorization response from Github: {\"message\":\"Bad credentials\",\"documentation_url\":\"https://developer.github.com/v3\"}" 
     } 
     ], 
     "code":400, 
     "message":"Unsuccessful check authorization response from Github: {\"message\":\"Bad credentials\",\"documentation_url\":\"https://developer.github.com/v3\"}" 
    } 
} 

任何想法?我查看了最近的更新日誌,但我無法找到與此相關的任何內容。

更新

它看起來像個人的訪問令牌的支持已被刪除。我已將測試應用切換到匿名身份驗證,這對我的目的非常有效。

回答

2

您用於生成OAuth訪問令牌的GitHub帳戶很可能與您在Firebase控制檯項目設置中配置的GitHub客戶端ID不匹配。登錄到Firebase控制檯並將您的GitHub客戶端ID和密碼更新爲您用於生成訪問令牌的GitHub客戶端。

+0

感謝您的閱讀和回覆。不幸的是,客戶端ID和客戶端密碼是正確的。我已將GitHub的值添加到Firebase控制檯。任何其他想法? – AndrewJM

+0

嘗試使用signInWithPopup登錄GitHub。獲取result.credential字段中返回的訪問令牌。嘗試signInWithCredential使用,它應該工作。無論您用於獲取GitHub憑證的任何服務都不能與您在控制檯中設置的服務相匹配。 – bojeil

+0

我可以確認該作品,但這需要一個用戶界面。上述代碼的好處在於它可以在測試用例中使用(直到最近)。我傳入「firebase.auth.GithubAuthProvider.credential」的憑證確實是GitHub提供的憑證。 我挖入錯誤對象並發現以下錯誤代碼:auth/internal-error – AndrewJM

相關問題