Sto provando a caricare un file su un server usando curl e python. Di seguito ho il codice di come l'ho implementato. Qualche idea su quello che sto facendo male.Carica un file in un server di fiaschetta python usando curl
curl -i -X PUT -F name=Test -F [email protected] "http://localhost:5000/"
@app.route("/", methods=['POST','PUT'])
def hello():
file = request.files['Test']
if file and allowed_file(file.filename):
filename=secure_filename(file.filename)
print filename
return "Success"
Quello che segue è l'errore che il server invia indietro
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>The browser (or proxy) sent a request that this server could not understand.</p>
Grazie in anticipo.
Il codice funziona se si postano i dati, ad es. 'curl -F" [email protected] "http: //127.0.0.1: 5000' che pertanto riduce il tuo problema a come gestisci le richieste PUT in Flask. – Doobeh
Ricordo alcuni thread che dicono che request.files non funziona con PUT. Puoi provare request.data invece? – codegeek
Il tuo codice sembra buono, cosa ottieni se provi: curl -X PUT -F [email protected] http: // localhost: 5000 – snahor