【问题标题】:How can I post my data without generating firebase id on firebase realtime database?如何在不在 firebase 实时数据库上生成 firebase id 的情况下发布我的数据?
【发布时间】:2020-11-05 02:14:35
【问题描述】:

我正在尝试将用户的身份验证 ID 推送到实时数据库,以便同时轻松获取它们,但实时数据库继续在 UUID 下生成 ID。

  Future<http.Response> createUserProfile(
    String id,
    String email,
    String userName,
  ) async {
    return await http.post(
      ServiceKeys.FIREBASE_URL + "/users/$id.json",
      headers: <String, String>{
        'Content-Type': 'application/json; charset=UTF-8',
      },
      body: jsonEncode(<String, String>{'name': userName, 'email': email}),
    );
  }
}

我不想生成“-MCHpnJZnKvth-L89axu”。而是直接将其写入我提供的 id 中。

【问题讨论】:

    标签: json flutter post dart firebase-realtime-database


    【解决方案1】:

    尝试使用 put 而不是 post。 Firebase API 说

    POST:添加到 Firebase 数据库中的数据列表。每次我们 发送 POST 请求,Firebase 客户端会生成一个唯一密钥,例如 消息/用户//

    PUT:将数据写入或替换到定义的路径,例如 消息/用户/user1/

    既然你已经有了 uid,那它就是一个定义好的路径

    【讨论】:

    • 谢谢。 put 为我工作。我感觉太糟糕了,无法正确阅读文档。谢谢你注意到我:)
    • 在使用 POST 或 PUT 时,有没有办法在请求正文中生成唯一 id 或传递 uid ?
    猜你喜欢
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    • 1970-01-01
    • 2022-10-26
    • 1970-01-01
    相关资源
    最近更新 更多