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

如何在Postman中向Firebase API直接存入数据而不生成唯一键

如何在Postman中直接向Firebase Realtime Database存储对象(避免自动生成唯一键)

我太懂这个痛点了!用POST请求Firebase的.json端点时,它默认就是会生成类似-L545gZW7E6Ed6iqXRok的推送ID,把你的数据嵌套在这个随机键下面——这其实是Firebase在模拟SDK里push()方法的行为,专门用来生成唯一子节点的。而你想要的是像set()那样直接把对象存在目标节点,不用额外嵌套,用PUT方法确实是正确的解法,下面给你一步步说怎么操作:

两种常见的PUT使用场景

1. 自定义键存储单条数据

如果你想给这条数据指定自己的唯一键(比如milky-way、andromeda这种有意义的名称),只需要把请求URL改成带自定义键的形式:

https://my-firebase-project.firebaseio.com/galaxies/[你的自定义键].json

然后用PUT方法发送JSON格式的数据体。举个实际例子:

  • 请求URL:https://my-firebase-project.firebaseio.com/galaxies/milky-way.json
  • 请求体(Raw JSON):
{
  "name": "银河系",
  "starCount": 200000000000,
  "type": "螺旋星系"
}

发送后,你的数据就会直接存放在galaxies/milky-way节点下,完全没有自动生成的嵌套键。

2. 直接覆盖整个节点的内容

如果你想一次性把整个galaxies节点替换成你定义的完整对象(注意:这会清空原来galaxies下的所有现有数据,操作前要谨慎!),直接用PUT请求根节点的URL:

https://my-firebase-project.firebaseio.com/galaxies.json

然后把你的完整对象作为请求体发送。比如:

  • 请求体(Raw JSON):
{
  "milky-way": {
    "name": "银河系",
    "starCount": 200000000000
  },
  "andromeda": {
    "name": "仙女座星系",
    "starCount": 1000000000000
  }
}

发送后,galaxies节点的内容就会完全变成你提交的这个对象,原有数据会被覆盖。

补充:POST和PUT的核心区别

  • POST:Firebase自动生成唯一推送ID,将数据作为该ID的子节点添加到目标路径,对应SDK的push()方法,适合添加多条需要唯一标识的无序列数据。
  • PUT:直接设置目标节点的值,对应SDK的set()方法;如果目标节点不存在则创建,存在则覆盖原有内容,适合自定义键存储或批量更新节点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 07:39:30