MCPcopy Index your code
hub / github.com/mitmproxy/mitmproxy / get

Method get

mitmproxy/tools/web/app.py:668–686  ·  view source on GitHub ↗
(self, flow_id, message)

Source from the content-addressed store, hash-verified

666 self.view.update([self.flow])
667
668 def get(self, flow_id, message):
669 message = getattr(self.flow, message)
670 assert isinstance(self.flow, HTTPFlow)
671
672 original_cd = message.headers.get("Content-Disposition", None)
673 filename = None
674 if original_cd:
675 if m := re.search(r'filename=([-\w" .()]+)', original_cd):
676 filename = m.group(1)
677 if not filename:
678 filename = self.flow.request.path.split("?")[0].split("/")[-1]
679
680 filename = re.sub(r'[^-\w" .()]', "", filename)
681 cd = f"attachment; {filename=!s}"
682 self.set_header("Content-Disposition", cd)
683 self.set_header("Content-Type", "application/text")
684 self.set_header("X-Content-Type-Options", "nosniff")
685 self.set_header("X-Frame-Options", "DENY")
686 self.write(message.get_content(strict=False))
687
688
689class FlowContentView(RequestHandler):

Callers

nothing calls this directly

Calls 4

get_contentMethod · 0.80
getMethod · 0.45
splitMethod · 0.45
writeMethod · 0.45

Tested by

no test coverage detected