Firestore REST API | 如何用Postman调用Firestore REST API并解决认证报错
问题原因及解决方法
你遇到的401未认证错误核心是认证参数的传递方式不符合Firestore REST API的要求,只传URL里的项目API密钥、或者把JWT放在请求体里都无法完成认证,正确操作步骤如下:
- 首先确认你拿到的是正确的用户登录凭证:用户通过Firebase Auth登录成功后返回的
idToken字段,注意不是refresh token,且该token默认有效期仅1小时,要确保请求时未过期。 - 调用Firestore接口时,将上述idToken放在HTTP请求头中传递,格式为:
注意Bearer和token内容之间必须有空格,不能省略。Authorization: Bearer 你的用户idToken - 如果你需要实现无需用户登录的公开访问,可使用服务账号生成OAuth2访问令牌,授予该服务账号Firestore对应资源的访问权限后,同样通过上述Authorization头传递令牌即可。
- 额外注意:如果完成上述操作后返回403错误而非401,说明身份认证已经通过,只是你的Firebase安全规则限制了当前用户的访问权限,需要调整安全规则配置。
内容的提问来源于stack exchange,提问作者Labham Jain
相关产品推荐
相关产品推荐

