firebase 删除带有 equalTo 的 xmlhttp 请求

firebase delete xmlhttp request with equalTo

  DellContact=(emailcontact) => { 
            let {xhttp}=this.DbConn('DELETE','.json?orderBy="email"&equalTo="' + emailcontact + '"');
            xhttp.send();
    }
    
     DbConn (method, addon){
            let xhttp = new XMLHttpRequest();
            let url = "https://phonebook-496ff-default-rtdb.firebaseio.com/Contacts" + addon;
            xhttp.open(method,url,true);
            xhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
            return {xhttp};
        } 

你好,我正在尝试通过比较名为“email”的 JSON 值与值 emailcontact 来从 firebase 中删除特定数据。我收到一个错误的请求 400。它与我认为的请求语法有关,因为使用 GET/POST 它可以工作。 firebaseURL/Contact.json?orderBy="email"&equalTo="abc@gmail.com" <-- 这是发送的请求 有什么建议吗?

Firebase 实时数据库不支持更新或删除查询。要删除节点,您需要知道它的确切路径。

所以你需要:

  1. 执行查询GET以确定结果。
  2. 然后在您的应用程序代码中循环处理结果。
  3. 对每个单独的结果执行 DELETE 请求。