Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  3 5944
Jeg har laget et API i Python med flask, hvor jeg kan ‘uploade’ filer. Nå er planen at dette API’et skal ‘starte’ et annet Python-script med ‘Gender and Age’ detection blir kjørt og sende denne dataen tilbake til mitt klient-script hvor jeg ‘uploader’ filen fra.
Sånn praktisk sett, undres det over om det dataen skal sendes som ‘return’ fra dette upload API’et eller om den dataen burde hentes via en ‘GET’ funksjon i API’et?
Jeg tenker den første løsningen der dataen blir sendt som ‘return’ er best, for da venter jo API’et med å svare til bilde er prossesert. Hva tenker dere?
med fruktkjøtt.
Tias's Avatar
Crew
Ja, hvis det ikke tar veldig lang tid gir det mening å returnere det som svar til POST-en.

Hvis det tar lang tid å prosessere gir det mer mening at dette gjøres i flere operasjoner (POST + GET).
Hvis en prosess tar veldig lang tid, og potensielt sett kan havne i en kø for prosessering senere, så er det nok gunstig å generere en ID for jobben som skal gjøres, lagre den i køen, og returnere IDen. Da kan man på et senere tidspunkt bruke GET med IDen mot et API for å sjekke om jobben er ferdig, og så hente ut data når den er ferdig.

Eksempelvis

Kode

"POST /upload <bildedata>" -> '{"status":"success", "workID": "ae43d7c96c888c9244f2c85136970a0b"}'
"GET /status?workID=ae43d7c96c888c9244f2c85136970a0b" -> '{"status":"success", "completed":false}'
...
"GET /status?workID=ae43d7c96c888c9244f2c85136970a0b" -> '{"status":"success", "completed":true}'
"GET /download?workID=ae43d7c96c888c9244f2c85136970a0b" -> <fildata>
Trådstarter
71 2
Takk, det var nettopp disse tingene jeg undret meg over.