Пользовательский идентификатор Firebase POST

есть ли способ установить собственный идентификатор в Firebase при использовании метода POST? что-то типа:

{
  "users": {
    "user_one": {
      "username": "jdoe",
      "password": "123"
    }
  }
}

Я работаю над проектом Vue.js и пытаюсь спасти некоторых учеников и их родителей, таких как:

let padre = {
  nombre: this.padre.nombre,
  apellido: this.padre.apellido,
  cedula: this.padre.cedula,
  nacionalidad: this.padre.nacionalidad,
  estado_civil: this.padre.estado_civil,
  instruccion: this.padre.instruccion,
  profesion: this.padre.profesion,
  trabaja: this.padre.trabaja,
  l_trabajo: this.padre.l_trabajo,
  d_trabajo: this.padre.d_trabajo,
  tlf_trabajo: this.padre.tlf_trabajo,
  tlf_habitacion: this.padre.tlf_habitacion,
  tlf_movil: this.padre.tlf_movil
}

  axios.post('https://projectname.firebaseio.com/padres.json', padre)
    .then(function (response) {
      console.log(response);
    })
    .catch(function (error) {
      console.log(error);
    });

person Gustavo Ordaz    schedule 14.07.2017    source источник


Ответы (3)


Обязательно используйте put вместо почтового запроса, иначе вы получите автоматически сгенерированный идентификатор внутри вашего «user_one».

POST даст вам:

{
  "users": {
    "user_one": {
      "134134hnj34nuj134bn": {
        "username": "jdoe",
        "password": "123"
      }
    }
  }
}

axios.put('https://projectname.firebaseio.com/padres/user_one.json', padre)

PUT даст вам то, что вы хотите.

{
  "users": {
    "user_one": {
      "username": "jdoe",
      "password": "123"
    }
  }
}
person Bram G    schedule 01.05.2018
comment
Не будет ли использование PUT вместо POST перезаписывать данные? - person YAMAN; 12.08.2018

Конечно есть. Просто используйте метод HTTP PUT и укажите полный путь. В зависимости от вашей библиотеки это может быть так же просто, как:

axios.post('https://projectname.firebaseio.com/padres/user_one.json', padre)

Дополнительную информацию см. в документации Firebase REST API по команде PUT< /а>.

person Frank van Puffelen    schedule 15.07.2017

Если вы используете Php cURL, я добился этого с помощью PUT, добавив свой собственный идентификатор в URL-адрес.

person Chirag Joshi    schedule 17.03.2021