我无法将自定义令牌发送回客户端。 // unity3d和Firebase云功能

时间:2019-06-09 16:38:04

标签: node.js firebase unity3d google-cloud-functions token

通过以下代码开始调试后,我得到了一个自定义令牌:

const admin = require('firebase-admin');
const serviceAccount = require('C:/Node_firebase_Funcetion/Documents/generate_token/serviceAccountKey.json');
admin.initializeApp({credential: admin.credential.cert(serviceAccount),});

var additionalClaims = { premiumAccount: true };

admin.auth().createCustomToken("j92C5KJtRQblKXRM0XUZzx4Jonm2", additionalClaims)
.then(function(customToken: any) {
  console.log(customToken); 
})
.catch(function(error: any) {
  console.log(error);
});

我创建了一个代码以将数据返回给客户端。

import * as functions from 'firebase-functions';

const admin = require('firebase-admin');
const serviceAccount = require('C:/Node_firebase_Funcetion/Documents/generate_token/serviceAccountKey.json');
admin.initializeApp({credential: admin.credential.cert(serviceAccount),});

 exports.Create_custom_tokens = functions.https.onCall((client) => {        
  console.log(client.user_ID);
  return {operationResult : "..Test..return.. data.."};
});

但是出了点问题, 当我运行“ firebase deploy”时,出现错误消息。

+  functions: functions folder uploaded successfully
i  functions: creating Node.js 8 function Create_custom_tokens(us-central1)...
!  functions[Create_custom_tokens(us-central1)]: Deployment error.
Function failed on loading user code. Error message: Code in file lib/index.js can't be loaded.
Did you list all required modules in the package.json dependencies?
Detailed stack trace: Error: Cannot find module 'C:/Node_firebase_Funcetion/Documents/generate_token/serviceAccountKey.json'
    at Function.Module._resolveFilename (module.js:548:15)
    at Function.Module._load (module.js:475:25)
    at Module.require (module.js:597:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/srv/lib/index.js:5:24)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)


Functions deploy had errors with the following functions:
        Create_custom_tokens


To try redeploying those functions, run:
    firebase deploy --only functions:Create_custom_tokens

To continue deploying other features (such as database), run:
    firebase deploy --except functions
Error: Functions did not deploy properly.
PS C:\Node_firebase_Funcetion>

如果我删除它,效果很好:

const serviceAccount = require('C:/Node_firebase_Funcetion/Documents/generate_token/serviceAccountKey.json');

然后使用:

admin.initializeApp(functions.config().firebase);

代表:

"admin.initializeApp({credential:admin.credential.cert(serviceAccount),});"

但是我无法获得自定义令牌,因为没有serviceAccountKey.json。 T0T

0 个答案:

没有答案