Zoeken…


Invoering

Er zijn veel redenen waarom een lees- of schrijfbewerking mislukt. Een veel voorkomende is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database is standaard alleen toegankelijk voor een geverifieerde gebruiker) of omdat u schrijft / luistert op een locatie waar u niet bent toestemming hebben.

Detecteer fouten bij het schrijven van een waarde op Android

Er zijn veel redenen waarom een schrijfbewerking mislukt. Een veel voorkomende is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database kan standaard alleen worden geopend door een geverifieerde gebruiker).

U kunt deze beveiligingsregelovertredingen zien in de logcat-uitvoer. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukt schrijven op Android te detecteren, setValue u een voltooide callback toe aan setValue :

ref.setValue("My new value", new DatabaseReference.CompletionListener() {
    public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
        throw databaseError.toException();
    }
});

Door een dergelijke uitzondering te maken, is het heel moeilijk om de volgende keer zo'n fout over het hoofd te zien.

Detecteer fouten bij het lezen van gegevens op Android

Een veel voorkomende reden waarom uw leesbewerking mogelijk niet werkt, is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database is standaard alleen toegankelijk voor een geverifieerde gebruiker).

U kunt deze beveiligingsregelovertredingen zien in de logcat-uitvoer. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukte read op Android te detecteren, moet u de onCancelled methode van uw ChildEventListener :

databaseRef.addChildEventListener(new ChildEventListener() {
    public void onChildAdded(DataSnapshot dataSnapshot, String s) { ... }
    public void onChildChanged(DataSnapshot dataSnapshot, String s) { ... }
    public void onChildRemoved(DataSnapshot dataSnapshot) { ... }
    public void onChildMoved(DataSnapshot dataSnapshot, String s) { ... }
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
});

Of als u een ValueEventListener :

databaseRef.addValueEventListener(new ValueEventListener() {
    public void onDataChange(DataSnapshot dataSnapshot, String s) { ... }
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
});

Met deze code is het vrij moeilijk om een beveiligingsfout over het hoofd te zien bij het lezen van gegevens op Android.

Detecteer fouten bij het schrijven van een waarde op iOS

Er zijn veel redenen waarom een schrijfbewerking mislukt. Een veel voorkomende is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database kan standaard alleen worden geopend door een geverifieerde gebruiker).

U kunt deze inbreuken op de beveiligingsregels zien in de uitvoer van uw programma. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukt schrijven op iOS te detecteren, voegt u een voltooiingsblok toe aan setValue :

let message = ["name": "puf", "text": "Hello from iOS"]
ref!.childByAutoId().setValue(message) { (error) in
    print("Error while writing message \(error)")
}

Door een dergelijke uitzondering te maken, is het heel moeilijk om de volgende keer zo'n fout over het hoofd te zien.

Detecteren van fouten bij het lezen van gegevens in JavaScript

Een veel voorkomende reden waarom uw leesbewerking mogelijk niet werkt, is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database is standaard alleen toegankelijk voor een geverifieerde gebruiker).

U kunt deze inbreuken op de beveiligingsregels zien in de JavaScript-console van uw browser. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukte read in JavaScript te detecteren, moet u een tweede callback toevoegen aan uw on() -clausule:

ref.on('value', function(snapshot) {
    console.log(snapshot.key, snapshot.val());
}, function(error) {
    alert(error);
})

Met deze code is het vrij moeilijk om een beveiligingsfout over het hoofd te zien bij het lezen van gegevens in JavaScript.

Detecteert fouten bij het schrijven van een waarde in JavaScript

Er zijn veel redenen waarom een schrijfbewerking mislukt. Een veel voorkomende is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database kan standaard alleen worden geopend door een geverifieerde gebruiker).

U kunt deze inbreuken op de beveiligingsregels zien in de console-uitvoer. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukt schrijven in JavaScript te detecteren, voegt u een voltooide callback toe om in te set :

ref.set("My new value").catch(function(error)
    console.error(error);
    alert(error);
});

Door een dergelijke waarschuwing te geven, is het erg moeilijk om de volgende keer zo'n fout over het hoofd te zien.

Detecteer fouten bij het lezen van gegevens op iOS

Een veel voorkomende reden waarom uw leesbewerking mogelijk niet werkt, is omdat uw beveiligingsregels de bewerking weigeren, bijvoorbeeld omdat u niet bent geverifieerd (een database is standaard alleen toegankelijk voor een geverifieerde gebruiker).

U kunt deze inbreuken op de beveiligingsregels zien in de uitvoer van de console. Maar het is gemakkelijk om deze over het hoofd te zien. Je kunt ze ook verwerken in je eigen code en ze prominenter zichtbaar maken, wat vooral handig is tijdens de ontwikkeling (aangezien je JSON, regels en code vaak veranderen).

Om een mislukte read op iOS te detecteren, moet u het withCancel blok van uw waarnemer implementeren:

    ref!.child("notAllowed").observe(.value, with: { (snapshot) in
        print("Got non-existing value: \(snapshot.key)")
    }, withCancel: { (error) in
        print(error)
    })


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow