Szukaj…


Wprowadzenie

Istnieje wiele powodów niepowodzenia operacji odczytu lub zapisu. Często jest tak, ponieważ reguły bezpieczeństwa odrzucają operację, na przykład dlatego, że nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik) lub dlatego, że piszesz / nasłuchujesz w miejscu, w którym nie mieć pozwolenie.

Wykryj błędy podczas zapisywania wartości na Androidzie

Istnieje wiele przyczyn niepowodzenia operacji zapisu. Często dzieje się tak, ponieważ reguły bezpieczeństwa odrzucają operację, na przykład dlatego, że nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Te naruszenia reguł bezpieczeństwa można zobaczyć w danych wyjściowych logcat. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudany zapis w Androidzie, dołącz oddzwanianie do setValue :

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

Zgłoszenie takiego wyjątku gwarantuje, że bardzo trudno będzie przeoczyć taki błąd następnym razem.

Wykryj błędy podczas odczytu danych na Androidzie

Częstym powodem, dla którego operacja odczytu może nie działać, jest to, że reguły bezpieczeństwa odrzucają operację, na przykład ponieważ nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Te naruszenia reguł bezpieczeństwa można zobaczyć w danych wyjściowych logcat. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudanej przeczytać na Androida należy wdrożyć onCancelled metodę swojej 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();
    }
});

Lub jeśli masz ValueEventListener :

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

Po wprowadzeniu tego kodu trudno będzie przeoczyć błąd bezpieczeństwa podczas odczytu danych na Androidzie.

Wykryj błędy podczas zapisywania wartości w iOS

Istnieje wiele przyczyn niepowodzenia operacji zapisu. Często dzieje się tak, ponieważ reguły bezpieczeństwa odrzucają operację, na przykład dlatego, że nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Naruszenie reguł bezpieczeństwa można zobaczyć w danych wyjściowych programu. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudany zapis w iOS, dołącz blok uzupełniający do setValue :

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

Zgłoszenie takiego wyjątku gwarantuje, że bardzo trudno będzie przeoczyć taki błąd następnym razem.

Wykrywanie błędów podczas odczytu danych w JavaScript

Częstym powodem, dla którego operacja odczytu może nie działać, jest to, że reguły bezpieczeństwa odrzucają operację, na przykład ponieważ nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Te naruszenia zasad bezpieczeństwa można zobaczyć w konsoli JavaScript przeglądarki. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudany odczyt w JavaScript, musisz zaimplementować dodanie drugiego wywołania zwrotnego do swojej klauzuli on() :

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

Dzięki temu kodowi trudno będzie przeoczyć błąd bezpieczeństwa podczas odczytu danych w JavaScript.

Wykrywanie błędów podczas zapisywania wartości w JavaScript

Istnieje wiele przyczyn niepowodzenia operacji zapisu. Często dzieje się tak, ponieważ reguły bezpieczeństwa odrzucają operację, na przykład dlatego, że nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Te naruszenia reguł bezpieczeństwa można zobaczyć w danych wyjściowych konsoli. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudany zapis w JavaScript, dołącz oddzwanianie do zakończenia, aby set :

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

Wyświetlenie takiego alertu gwarantuje, że bardzo trudno będzie przeoczyć taki błąd następnym razem.

Wykryj błędy podczas odczytu danych w iOS

Częstym powodem, dla którego operacja odczytu może nie działać, jest to, że reguły bezpieczeństwa odrzucają operację, na przykład ponieważ nie jesteś uwierzytelniony (domyślnie dostęp do bazy danych może uzyskać tylko uwierzytelniony użytkownik).

Te naruszenia reguł bezpieczeństwa można zobaczyć w danych wyjściowych konsoli. Ale łatwo je przeoczyć. Możesz także obsługiwać je we własnym kodzie i uczynić je bardziej widocznymi, co jest szczególnie przydatne podczas programowania (ponieważ JSON, reguły i kod często się zmieniają).

Aby wykryć nieudany odczyt w iOS, musisz zaimplementować blok withCancel swojego obserwatora:

    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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow