You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Angular中通过HTTP请求自定义Firebase节点键替换随机键

Firebase数据结构

问题原因

你当前使用POST请求提交到/users.json时,Firebase Realtime Database REST API 默认会生成随机唯一ID作为新增节点的键,这就是得到随机键的原因。要自定义节点键,需要改用PUT请求,将自定义键直接拼接在请求路径中。

修改后的实现代码

addUserToBase(
  email: string,
  name: string,
  surname: string,
  position: string,
  userId: string
) {
  // 将自定义的userId作为节点键拼接到URL中,使用PUT替换POST
  return this.http.put<User>(
    `https://[API_KEY].firebasedatabase.app/users/${userId}.json`,
    {
      userId: userId,
      email: email,
      name: name,
      surname: surname,
      position: position
    }
  );
}

注意事项

  • 示例中使用传入的userId作为users下的子节点键,你也可以替换为其他自定义字符串作为目标键
  • PUT请求会覆盖目标路径下已有的全部数据,若对应userId的节点已存在,原有数据会被新提交的内容完全替换。如果仅需要更新部分字段不覆盖全量数据,可以将PUT改为PATCH请求

内容的提问来源于stack exchange,提问作者Young programmer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:39:03