Angularfire2自定义标记格式不正确

时间:2016-09-29 17:58:29

标签: angular firebase-realtime-database firebase-authentication angularfire angularfire2

我正在生成令牌并传递给Angularfire2,它一直在给我:

The custom token format is incorrect

虽然相同的令牌在Angular1 Firebase上运行良好。

    constructor(af: AngularFire) {
    let token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhZG1pbiI6ZmFsc2UsImRlYnVnIjpmYWxzZSwiZXhwIjoxNDkwODAwOTYzLCJkIjp7InVpZCI6Im1heGllLGZlZW5leSJ9LCJ2IjowLCJpYXQiOjE0NzUxNjI1NjN9.YAyRVxL6dlw4WCVHY8lCd09qJ2tY9rg_dTQZtkW5zAs';

    af.auth.login(token, {})
        .then((success) => {
          console.log("Firebase success: " + JSON.stringify(success));
        })
        .catch((error) => {
          console.log("Firebase failure: " + JSON.stringify(error));
        });
  }

有谁知道Angular2令牌与Angular1 Firebase令牌有什么不同?

1 个答案:

答案 0 :(得分:0)

假设您的令牌是source code,它可能是之前的令牌,您可以使用自定义令牌进行身份验证,并将额外的参数传递给登录。

af.auth.login(token, {
  provider: AuthProviders.Custom,
  method: AuthMethods.CustomToken
})
.then(...)
.catch(...);

有关其他可用登录参数的更多具体细节,您可以查看{{3}}。

如果这不起作用,您可能需要深入了解如何形成jwt令牌。我也可以帮你。