Code: Select all
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)
});
Code: Select all
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"}
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
Code: Select all
@app.post('/myuploader')
def uploader(request: Request):
print(request.stream())//
return {"sending":"OK"}
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?