NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

wsgi.py (1661B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\beeline\middleware\wsgi.py
      2 from beeline.propagation import Request
      3 
      4 class WSGIRequest(Request):
      5 
      6     def __init__(self, mwname, environ):
      7         self._mwname = mwname
      8         self._environ = environ
      9 
     10     def header(self, key):
     11         lookup_key = 'HTTP_' + key.upper().replace('-', '_')
     12         return self._environ.get(lookup_key)
     13 
     14     def method(self):
     15         return self._environ.get('REQUEST_METHOD')
     16 
     17     def scheme(self):
     18         return self._environ.get('wsgi.url_scheme')
     19 
     20     def host(self):
     21         return self._environ.get('HTTP_HOST')
     22 
     23     def path(self):
     24         return self._environ.get('PATH_INFO')
     25 
     26     def query(self):
     27         return self._environ.get('QUERY_STRING')
     28 
     29     def middleware_request(self):
     30         return self._environ
     31 
     32     def request_context(self):
     33         request_method = self._environ.get('REQUEST_METHOD')
     34         if request_method:
     35             trace_name = '%s_http_%s' % (self._mwname, request_method.lower())
     36         else:
     37             trace_name = '%s_http' % self._mwname
     38         return {'name': trace_name,
     39          'type': 'http_server',
     40          'request.host': self._environ.get('HTTP_HOST'),
     41          'request.method': request_method,
     42          'request.path': self._environ.get('PATH_INFO'),
     43          'request.remote_addr': self._environ.get('REMOTE_ADDR'),
     44          'request.content_length': self._environ.get('CONTENT_LENGTH', 0),
     45          'request.user_agent': self._environ.get('HTTP_USER_AGENT'),
     46          'request.scheme': self._environ.get('wsgi.url_scheme'),
     47          'request.query': self._environ.get('QUERY_STRING')}