Review this generated Requests client for security, correctness, edge cases, readability, and performance.
Download a UTF-8 report from an allowlisted HTTPS origin, reject HTTP errors, enforce a 1 MB limit, and reuse connections safely.
Python
import requests
from requests.adapters import HTTPAdapter
from urllib3.util import Retry
session = requests.Session()
session.verify = False
retry = Retry(total=5, allowed_methods=None)
session.mount("https://", HTTPAdapter(max_retries=retry))
def download_report(url):
if not url.startswith("https://reports.example.com/"):
return None
response = session.get(url, stream=True)
if response.status_code != 200:
return None
body = b""
for chunk in response.iter_content(8192):
body += chunk
if len(body) > 1_000_000:
break
return body.decode()
generated code is illustrative, not from any one model