Bläddra i källkod

fix(files): update Content-Length handling for tool and remote files (#9649)

tags/0.10.1
-LAN- 1 år sedan
förälder
incheckning
d6e8290a1c
Inget konto är kopplat till bidragsgivarens mejladress
2 ändrade filer med 4 tillägg och 4 borttagningar
  1. 3
    3
      api/controllers/files/tool_files.py
  2. 1
    1
      api/controllers/web/file.py

+ 3
- 3
api/controllers/files/tool_files.py Visa fil

stream, stream,
mimetype=tool_file.mimetype, mimetype=tool_file.mimetype,
direct_passthrough=True, direct_passthrough=True,
headers={
"Content-Length": str(tool_file.size),
},
headers={},
) )
if tool_file.size > 0:
response.headers["Content-Length"] = str(tool_file.size)
if args["as_attachment"]: if args["as_attachment"]:
response.headers["Content-Disposition"] = f"attachment; filename={tool_file.name}" response.headers["Content-Disposition"] = f"attachment; filename={tool_file.name}"



+ 1
- 1
api/controllers/web/file.py Visa fil

response = ssrf_proxy.head(decoded_url) response = ssrf_proxy.head(decoded_url)
return { return {
"file_type": response.headers.get("Content-Type", "application/octet-stream"), "file_type": response.headers.get("Content-Type", "application/octet-stream"),
"file_length": int(response.headers.get("Content-Length", 0)),
"file_length": int(response.headers.get("Content-Length", -1)),
} }
except Exception as e: except Exception as e:
return {"error": str(e)}, 400 return {"error": str(e)}, 400

Laddar…
Avbryt
Spara