Ich benutze Thrift für einen Mikro-Service in Python geschrieben.
Ich gebe ein Wörterbuch in Python zurück, das NULL
Werte enthalten kann. Wie kann ich "Null" -Werte behandeln, wenn ich ein Python-Wörterbuch über Thrift zurücksende?
Dies ist der Code für meine Python-Antwort-Handler:
def response(id, token):
user_record = usertable.objects.get(uid = id)
if user_record.token == token:
response = dict(
pa_uid = user_record.pa_uid,
pa_token = user_record.pa_token,
dev_id = user.dev_id
)
return response
Die response
Funktion ist das ein Wörterbuch der Rückkehr und die dev_id
Schlüssel hat einen NULL
Wert in vielen Fällen.
Wie kann ich damit in Thrift umgehen?
Dies ist der Code in meiner Thrift-Datei:
service Calculator extends shared.SharedService {
map<string,string> response(1:string id, 2:string token),
}
Wenn die dev_id
Schlüssel einen NULL
Wert Thrift haben keinen Wörterbuch zurückzukehren und ein Fehler durch das Thrift-Client ausgelöst.
@Mango: Gute Änderungen. Vielen Dank! –
Kein Problem, es war eine großartige Antwort, alles was ich gemacht habe, war, den Code ein wenig einfacher zu verstehen;) –
Was ist, wenn die 'user.dev_id' 0 ist? Das 'or' wird immer noch eingefügt und' dev_id' wird '' no_dev'' zugewiesen. –