Sobes.tech
Junior — Middle

Ar įmanoma siųsti failą per HTTP protokolą ir kaip tai įgyvendinti?

sobes.tech AI

Atsakymas iš AI

Taip, failą galima siųsti per HTTP. Paprastai tai daroma nustatant tinkamus HTTP antraštes ir perduodant failo turinį atsakymo kūne.

Pavyzdys Python su Flask, kaip siųsti failą klientui:

from flask import Flask, send_file
app = Flask(__name__)

@app.route('/download')
def download():
    path = 'path/to/file.txt'
    return send_file(path, as_attachment=True)

if __name__ == '__main__':
    app.run()

Čia send_file automatiškai nustato Content-Type ir Content-Disposition antraštes, kad kliento naršyklė suprastų, jog tai yra failas, kurį galima parsisiųsti.