Tôi đang cố gắng tải tệp lên máy chủ bằng cách sử dụng bình curl và python. Dưới đây tôi có mã về cách tôi đã thực hiện nó. Bất kỳ ý tưởng về những gì tôi đang làm sai.Tải tệp lên máy chủ bình python bằng cách sử dụng 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"
Sau đây là lỗi mà máy chủ gửi lại
<!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>
Cảm ơn trước.
Mã của bạn hoạt động nếu bạn BẬT dữ liệu, ví dụ: 'curl -F" [email protected] "http: //127.0.0.1: 5000' do đó thu hẹp sự cố của bạn xuống cách bạn xử lý các yêu cầu PUT trong Flask. – Doobeh
Tôi nhớ một số chủ đề nói rằng request.files không hoạt động với PUT. Bạn có thể thử request.data thay thế không? – codegeek
Mã của bạn có vẻ tốt, bạn sẽ nhận được gì nếu bạn thử: curl -X PUT -F [email protected] http: // localhost: 5000 – snahor