Min*_*ris 6 firebase google-cloud-functions google-cloud-firestore
我正在深入Firebase功能(服务器端),并且无法从功能中获取身份验证信息.在它最简单的形式中,我将部署到Firebase函数的index.ts如下所示:
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp();
export const createOrganization = functions.firestore.document("Organizations/{organizationId}").
onCreate((snap, context) => {
console.log(context)
});
Run Code Online (Sandbox Code Playgroud)
我可以从Firebase的日志记录中看到这个函数确实被调用,并且记录的上下文看起来像这样:
{ eventId: 'XXXXX-XXXX-XXXX',
timestamp: '2018-04-13T21:37:33.349247Z',
eventType: 'google.firestore.document.write',
resource:
{ service: 'firestore.googleapis.com',
name: 'projects/XXXX/databases/(default)/documents/Organizations/XXXXXXXXXXXX'
},
params: { organizationId: 'XXXXXXXXXXXX' }
}
Run Code Online (Sandbox Code Playgroud)
我希望从文档中可以看到context参数还包含名为"authType"和"auth"的属性,这些属性包含有关发出请求的用户的信息.但是,在尝试了各种各样的事情之后,context.authType和context.auth总是未定义的.
我作为授权用户和未经授权的用户尝试了这一点,没有任何变化.
任何帮助搞清楚为什么没有填充context.authType和context.auth会非常有帮助,谢谢!
仅为Firebase产品提供身份验证信息,这些产品为每个触发事件的云功能提供身份验证信息.目前,只有实时数据库支持此功能.Firestore支持正在进行中.从理论上讲,云存储也可以提供支持.
它不一致,因为Cloud Functions for Firebase中的每个事件提供程序都由不同的团队驱动,每个团队都有不同的实现和优先级.
| 归档时间: |
|
| 查看次数: |
1382 次 |
| 最近记录: |