class_docstr: Standalone WSGI app that can serve files, etc.
class_docstr_tok: ["Standalone","WSGI","app","that","can","serve","files",",","etc","."]
docstr: Serves the static file located at the given path.
  
  Args:
    request: A Werkzeug Request object.
    path: The path of the static file, relative to the current directory.
  
  Returns:
    A Werkzeug Response object.
docstr_tok: ["Serves","the","static","file","located","at","the","given","path",".","Args",":","request",":","A","Werkzeug","Request","object",".","path",":","The","path","of","the","static","file",",","relative","to","the","current","directory",".","Returns",":","A","Werkzeug","Response","object","."]
code: def _ServeStaticFile(self, request, path):
      """Serves the static file located at the given path.
  
      Args:
        request: A Werkzeug Request object.
        path: The path of the static file, relative to the current directory.
  
      Returns:
        A Werkzeug Response object.
      """
      if not self._PathIsSafe(path):
          logging.info("path %s not safe, sending 400", path)
          # Traversal attack, so 400.
          return self.respond(
              request, "Path not safe", "text/plain", 400
          )
  
      # Open the file and read it.
      try:
          contents = _LoadResource(path)
      except IOError:
          logging.info("path %s not found, sending 404", path)
          return self.respond(
              request, "Not found", "text/plain", code=404
          )
  
      mimetype, content_encoding = mimetypes.guess_type(path)
      mimetype = mimetype or "application/octet-stream"
      return self.respond(
          request,
          contents,
          mimetype,
          expires=3600,
          content_encoding=content_encoding,
      )
  
file_path: lit/lit_nlp/lib/wsgi_app.py
imports: import mimetypes
  import os
  import time
  import traceback
  import wsgiref.handlers
  from absl import logging
  import six
  from six.moves.urllib.parse import urlparse
  from werkzeug import wrappers
label_desc: Use image node_id 3 for calling the App obj's underlying member method code with example usage: obj._ServeStaticFile(request, path) and returns: self, self, self