MCPcopy
hub / github.com/encode/starlette / set_stat_headers

Method set_stat_headers

starlette/responses.py:330–338  ·  view source on GitHub ↗
(self, stat_result: os.stat_result)

Source from the content-addressed store, hash-verified

328 self.set_stat_headers(stat_result)
329
330 def set_stat_headers(self, stat_result: os.stat_result) -> None:
331 content_length = str(stat_result.st_size)
332 last_modified = formatdate(stat_result.st_mtime, usegmt=True)
333 etag_base = str(stat_result.st_mtime) + "-" + str(stat_result.st_size)
334 etag = f'"{hashlib.md5(etag_base.encode(), usedforsecurity=False).hexdigest()}"'
335
336 self.headers.setdefault("content-length", content_length)
337 self.headers.setdefault("last-modified", last_modified)
338 self.headers.setdefault("etag", etag)
339
340 async def __call__(self, scope: Scope, receive: Receive, send: Send) -> None:
341 scope_type = scope["type"]

Callers 2

__init__Method · 0.95
__call__Method · 0.95

Calls 1

setdefaultMethod · 0.45

Tested by

no test coverage detected