Firebase Cloud Functions 1.0.0后process.env.FIREBASE_CONFIG失效报错
解决Firebase Cloud Functions 1.0版本中process.env.FIREBASE_CONFIG的JSON.parse错误
嘿,我前不久刚踩过这个坑!你遇到的SyntaxError: Unexpected token o in JSON at position 1错误,其实是因为Firebase Cloud Functions 1.0版本对process.env.FIREBASE_CONFIG的处理逻辑变了:
问题根源:在Beta版本中,
process.env.FIREBASE_CONFIG是一个JSON格式的字符串,所以需要用JSON.parse()解析成对象;但升级到1.0版本后,平台已经自动帮你把这个环境变量解析成JavaScript对象了。这时候你再调用JSON.parse(),相当于把[object Object]这个字符串拿去解析(对象转字符串默认就是这个结果),自然会在第一个字符o的位置报错。正确代码示例:直接使用这个已解析的对象就行,完全不需要JSON.parse步骤:
// 不需要再做JSON.parse! const firebaseConfig = process.env.FIREBASE_CONFIG; // 直接访问配置里的属性 const databaseURL = firebaseConfig.databaseURL; const storageBucket = firebaseConfig.storageBucket; const projectId = firebaseConfig.projectId;小提醒:迁移指南里的示例可能是针对从Beta版本升级的过渡场景写的,但实际在1.0及以上版本中,直接用对象就好,别多做一步解析啦。
内容的提问来源于stack exchange,提问作者H0R
相关产品推荐
相关产品推荐

