我试图给我的react网络应用程序的某些用户自定义索赔,我无法得到过去这个错误。
错误:
TypeError: getCurves is not a function
./node_modules/jose/lib/registry/ec_curves.js
2 |
3 | const curves = new Set()
4 |
> 5 | if (getCurves().includes('prime256v1')) {
6 | curves.add('P-256')
7 | }
8 |
这个函数触发它的函数
admin.auth().setCustomUserClaims(uid, {
admin: true,
})
这是我的管理SDK的样子
import * as admin from 'firebase-admin';
import serviceAccount from './Servicekey.json';
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: <databaseURL>
});
export default admin;
我曾经以类似的方式从我的系统更新用户配置文件(密码,电子邮件),但也不能这样做。
3条答案
按热度按时间fv2wmkja1#
在我的示例中,我使用了来自next-auth的getToken(
jei2mxaa2#
我知道已经过了几个月了,但我花了几天时间才弄明白,我最终还是恢复到了旧版本的firebase-admin。
我通过转到package.json文件并将firebase-admin版本更改为9.0.0,然后运行“npm i”来恢复。
e37o9pze3#
我也从
firebase-admin
v11.5得到这个错误,它运行在NextJS v12getServerSideProps
函数中。服务器没有出错,但是客户端出错了,这没有任何意义。结果是,我在此函数中运行
_app.tsx
文件中的firebase-admin
verifyIdToken
附加到页面组件,而不仅仅是服务器端,而不是
注意:在发布这篇文章后我发现getServerSideProps will not run at all in
_app.tsx
,但我发誓那天晚上它在做,第二天早上,它不是。