from fastapi import FastAPI, File, UploadFile
from fastapi.responses import FileResponse
import base64
app = FastAPI()
os.system('chcp')
@app.post("/uploadbase64")
async def post_base64Image(base64_image: str, photo_name: str):
imgstr = base64_image
imgdata = base64.b64decode(imgstr)
filename = '%s.jpg' % photo_name
with open(filename, 'wb') as f:
f.write(imgdata)
return base64_image
it's better to post base64 with the body ( that's the advantage of POST :) )
What is the maximum possible length of a query string?
curl:
I've just copied the curl command generated by Swagger UI and it worked well
curl -X POST "http://localhost:8000/uploadbase64?base64_image=iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAQAAAAAYLlVAAAABGdBTUEAALGPC%2FxhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA%2F4ePzL8AAAAHdElNRQffDAEWGTmOXnDsAAAAHGlET1QAAAACAAAAAAAAACAAAAAoAAAAIAAAACAAAAK51hVB4gAAAoVJREFUaN60l71OKlEQx38mhsTCoITYgEDhxwt4I6VSaCHPgVZIxwNgbNxQaqfJdr4AnVbKpSPaEChIWBMKrgmNAYx83EKJ7Nlz2A9gpjt7Zv7DnJn%2FDOBO1olzyjUP1Hinx5ABXf5R5YFrTomzzoIkwBFXPNPii5FCv2jxzBVHBOYLvk2WEh0lsKgdSmTZng%2F4FhfUHUNPap0LtmYDXyNN1RP4WKukWfMKv0%2BB%2FkzwI0b0KbDvHtxHireZwcf6RgqfG3g%2FGl0bp5%2B0aWJg0KTNp83tLhp%2Bp%2FAb6AyVrj4oc0eGJHvsECPGDnskyXBHmQ%2Bl3RCdDWfw90oXFTQSBFmSWi4RJIFGRRn%2BvX0IfnSF8SvnRBxlMMI5rwov%2BvSH8KFJo2%2BRY9NVEW%2BSoyXNojatHFPS0nvi0FMbH%2FIkLceUyiAuabwBOmHPRBZGZyBpyric9QqS4ZJndSYuXSUvGV4FGTumLaw3IM%2BKwvEyIaJEfjRKiGXFzRXyliz0SVtHTlVSsepfH6KIQeNHDYqEpmRBl8wIYUxdSkpv2ttHMUy3DaJTa8FajpfmeV%2B3NN6BTa83TPcbNhxxYGnK%2BuS%2BkLXEl7MlG3cBQM6Ckf1dtkrCpxfb1nMfQJgXAaU0XtyOhWVraK3ROQQAaYFlOxx%2Ff9CEyCoOaNddEY7puSIgad8PUJQd24ibNvwV8af%2BJQBxoT4%2FSDhw5ZyIJiUh7Ast4nAmUGWZ4KL%2BWhCkLFD9GdwIablVrBvzkCVuBbQbeBSOMo5ceXsCyAhoj1ATVs2kI0feihBOhPW1Bu%2BmgzZ%2FHDny0oYAe7RNdu%2FQMx002XW497knIoBdmia7HgI7GcQWGkBMyNzwPwAAAP%2F%2FK85OWAAAAoRJREFUtZa%2FTmJREMZ%2FJMbEwmgIoUGBApcXYCPlSqHF%2BhxoBXQ8ALs23lBqR3E7X8CttBPpiDYEChMuiSbChoYoBuVugQbPn3u5styZbs58Z75zzpyZgTfsT2oRx4tEaQu4NlFPuDiWgBvDs2C4J%2BkrgSQPAm4IPcHQ57uvBFL0BVwPWoLhhX1fCfzkRcC14FIw2BR8JVCQol3CqWSqEPCNQICKFO0UDhkJpjoh3wiEqAuoEYeQ5lEwDsj4RiDDQEB1SUOQa%2BlaDN8IGFKka4I6c4NNXwhs0tAfdY8nqTrlfSGQZyxgntibLASpScxu2Fg4gQ1upCi1yQMAFKUlm9LCCZSUGMXp4hZ30uIjOwsl8EP6azZ3bH12OFL4Xbk%2BQ0zqahYx1%2Bu%2FUvY%2FEl0SNBUXk1XHLSNUsWi%2Fq0WViKPvKqayd5OE7JbjVXJ6o8yKw6ZLRIgRfdcYEZYcPFcoSzOHzSs51XGdc4XniLLLLXiRVcpSqbex%2BcO6zjlNR3F9w5z5Jd3e3lROb9Mh7QTISvPRRzruzBV%2BR5N6Ns9knSHLGFK1%2BviUJQ%2FlWSy7JeXjTaqswbIbcE2TsRO9Je9x6IiS59ZhF5O1WfAwZw7gMQ0MMoQcRpYAITIYNLS3aGNzRtjLCcKYjlvYDKhTocA%2BKb4RJ06SFPsUqFCX%2Br1I3%2FQWfvIQhjYdxfG1zz0WFvf0pVFTl3rG7MsX0zGr%2BZTzaoese%2BrpZZtzpTp%2BXV85Z3veQrJOTtMjvqJNcvqq510S%2FFKatTe947facuaTLYrUpMHNTZ%2BoURT7%2Ff9LkF2OqdLVNJdp8%2BpS5Zjd6bC1aAmS5oATLmjxlyFjxgzp0eKCEw5IfzX0P7jvXGFgk1T%2BAAAAAElFTkSuQmCC&photo_name=aminjamal" -H "accept: application/json" -d ""
I don’t know why I use command line to execute the curl still get teh
error, and I take your suggestion, learning how to work with the request
body.
amin jamal notifications@github.com於 2020年11月20日 週五,上午2:01寫道:
is your problem solved?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/tiangolo/fastapi/issues/2380#issuecomment-730542448,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANLZKESZCKERWEWNDMOPIIDSQVMODANCNFSM4T3SJM4Q
.
I would strongly recommend not using query strings to pass images, as URLs tend to have a maximum length, and will probably be truncated
thank you guys, I change to use request body to get the base64.
Most helpful comment
I would strongly recommend not using query strings to pass images, as URLs tend to have a maximum length, and will probably be truncated