Forum: PC-Programmierung python lambda


von lambdaman (Gast)


Lesenswert?

Hallo,

kann mir jemand erklären, was das Lambda in folgendem Code tut?
1
    request = urllib.request.Request(BaseURL + '/API/' + Attributes['LOAD']['ID'], data)
2
    request.get_method = lambda: 'PATCH'
3
    resp = urllib.request.urlopen(request)
4
    print (resp.read().decode("utf-8"))

Danke und Gruß!

: Verschoben durch Moderator
Beitrag #5947802 wurde von einem Moderator gelöscht.
von DPA (Gast)


Lesenswert?

Wenn der lambda über request.get_method() aufgerufen wird, gibt er des 
String 'PATCH' zurück. Wenn urllib.request.urlopen(request) den request 
versickt, nimmt sie den String als Methode, die von request.get_method() 
zurückgegeben wird. In anderen Worten, es wird ein patch request statt 
ein post request gesendet. PATCH PUT POST, die Requests unterscheiden 
sich nur in einem Wort, aber man verwendet sie gerne für 
unterschiedliche Arten von Aufgaben, um die Wahrscheinlichkeit, dass 
man/jemand etwas unbeabsichtigtes anstellt, zu verringern. Die PATCH 
Methode verwendet man in der Regel, um einen Teil einer Sache upzudaten 
oder zu ersetzen: 
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH Die API 
muss das natürlich aber auch so vorsehen, sonst passiert gar nichts. 
Viele backend Entwickler verwenden einfach für alle Sachen, wo Daten 
gesendet/geändert werden, sie POST methode.

von lambdaman (Gast)


Lesenswert?

Vielen lieben Dank für die Erklärung. Das reicht mir ;-)

von ChilloMillo (Gast)


Lesenswert?

Lambdaman. Witziger name lol

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.