So erhalten Sie die Datei und Daten (JSON) von Javascript durch FastAPIPython

Python-Programme
Anonymous
 So erhalten Sie die Datei und Daten (JSON) von Javascript durch FastAPI

Post by Anonymous »

Ich sende die Bilddatei und JSON so aus Javascript.
var formData = new FormData();
formData.append("data",{"test":1});
//make jpg image from canvas.
var image = ref_canvas_release.current.toDataURL('image/jpeg', 0.85);

//////// confirm and test the image file is correctly created. it created!
var a = document.createElement('a');
a.href = image;
a.download = 'test.jpg';
a.click();
////////

formData.append("file",image);

axios.post("/myuploader",formData,{headers: {'Content-Type': 'application/form-data'}}).then(res=>{
console.log(res)
});

Dann ist meine FastAPI hier.
from fastapi import FastAPI,UploadFile, File,Depends,status,Body,Request

@app.post('/myuploader')
def uploader(request: Request):
print(request.query_params['data'])// key error 'data'
return {"sending":"OK"}

Ich bin mir nicht sicher, ob Sender/Empfänger oder beide falsch sind.
Gibt es eine allgemeine Praxis, die Datei und JSON gleichzeitig mit dem Formular zu senden? -data?

Danke an @deceze
Ich überprüfe diese Dokumente.
https://www.starlette.io/requests/
und versucht zu ändern
@app.post('/myuploader')
def uploader(request: Request):
print(request.stream())//
return {"sending":"OK"}

es zeigt
Ich denke, ich kann einen Schritt nach vorne machen, bin aber immer noch verwirrt, wie kann ich das tun? Holen Sie sich die Daten und die Datei von hier oder ist die direkte Verwendung von Requst keine gute Idee?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post