角度万能 | firebase 管理员 | code: 'app/invalid-credential' |socket 挂断

Posted

技术标签:

【中文标题】角度万能 | firebase 管理员 | code: \'app/invalid-credential\' |socket 挂断【英文标题】:angular-universal | firebase-admin | code: 'app/invalid-credential' |socket hang up on角度万能 | firebase 管理员 | code: 'app/invalid-credential' |socket 挂断 【发布时间】:2018-01-16 22:38:33 【问题描述】:
import * as admin from 'firebase-admin';
var serviceAccount = require('./keys/keyfile.json');
admin.initializeApp(
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://test.firebaseio.com"
);

var registrationToken = "--some-key--";

var payload = 
  notification: 
    title: "$GOOG up 1.43% on the day",
    body: "$GOOG gained 11.80 points to close at 835.67, up 1.43% on the day."
  ,
  data: 
    stock: "GOOG",
    open: "829.62",
    close: "635.67"
  
;


function panelMessage()
admin.messaging().sendToDevice(registrationToken, payload)
  .then(function(response) 
    // See the MessagingDevicesResponse reference documentation for
    // the contents of response.
    console.log("Successfully sent message:", response);
  )
  .catch(function(error) 
    // console.log(serviceAccount);
    var date = new Date();
    console.log(date.toString());
    console.log("Error sending message:", error);
  );

我通过节点运行此代码并且它可以工作,但是当我将它添加到 angular-universal 中时

server.ts

文件..它给出以下错误..

发送消息时出错: 错误:凭据实现提供给 通过“凭据”属性进行的 initializeApp() 无法获取有效的 带有以下错误的 Google OAuth2 访问令牌:“套接字挂起”。 在 FirebaseAppError.Error (本机) 在 FirebaseAppError.FirebaseError [作为构造函数] (D:\angular2MH\firebase - panel\panel\node_modules\firebase-admin\lib\utils\error.js:39:28) 在新的 FirebaseAppError (D:\angular2MH\firebase - panel\panel\node_modules\firebase-admin\lib\utils\error.js:84:23) 在 D:\angular2MH\firebase - 面板\panel\node_modules\firebase-admin\lib\firebase-app.js:119:23 在 ZoneDelegate.invoke (D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:232:26) 在 Zone.run (D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:114:43) 在 D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:502:57 在 ZoneDelegate.invokeTask (D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:265:35) 在 Zone.runTask (D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:154:47) 在 drainMicroTaskQueue (D:\angular2MH\firebase - panel\panel\node_modules\zone.js\dist\zone-node.js:401:35) errorInfo: 代码: 'app/invalid-credential', 消息:'通过“凭据”属性提供给 initializeApp() 的凭据实现未能获取有效的 Google OAuth2 带有以下错误的访问令牌:“套接字挂起”。

我检查了时间(在许多可能有问题的地方阅读)并且它们都已同步.. 谁能帮我解决这个问题?我正在使用这个存储库repository

【问题讨论】:

【参考方案1】:

来自 Firebase 支持, Angular-Universal 不是我们官方支持的库。因此无法提供 OAuth。

为了解决这个问题,我为 firebase 制作了另一台服务器,并从通用服务器进行了 api 调用。它现在工作正常。

【讨论】:

以上是关于角度万能 | firebase 管理员 | code: 'app/invalid-credential' |socket 挂断的主要内容,如果未能解决你的问题,请参考以下文章

角度应用程序中的 Firebase 功能不起作用

在 Firebase 中验证电话号码时出错(角度项目)

更新所有用户 firebase 角度的特定字段

从延迟和安全角度来看,Firebase 云消息传递类型之间有啥区别?

text 带角度的Firebase身份验证

尝试离子构建时出现角度firebase构建错误