I'd like to send a post request to the server containing an image, and a string to be used in a ML model, then return a new image from the server to be used in my app. now , I'm getting a bad request!
@app.route('/', methods=['POST'])
def API():
if request.method == 'POST':
imgfile = request.files['image'] # First field to be sent (Image)
imagename = werkzeug.utils.secure_filename[imgfile.filename]
imgfile.save('/home/criuser/images/' + imagename)
background_name = request.fields['back'] # Second field to be sent (String)
original = '/home/criuser/images/' + imagename
background = '/home/criuser/' + background_name
change_bg = alter_bg(model_type="pb")
change_bg.load_pascalvoc_model("/home/criuser/Téléchargements/xception_pascalvoc.pb")
result = change_bg.change_bg_img(f_image_path=original,
b_image_path=background,
output_image_name="/home/criuser/Téléchargements/new.jpg")
return send_file("/home/criuser/Téléchargements/new.jpg", as_attachment=True)
if __name__ == '__main__':
app.run()
that's what I use for the POST request :
curl -v -X POST --data-urlencode -d '{"image":"/home/criuser/Téléchargements/20210728_122019.jpg","back":"/home/criuser/Téléchargements/Tableau_Dashboard.jpg"}' http://127.0.0.1:5000