async def info_options(self, request): resp = web.Response(status=204) resp.headers[hdrs.CONTENT_TYPE] = "application/json;charset=UTF-8" resp.headers[hdrs.CACHE_CONTROL] = CACHE_CONTROL resp.headers[hdrs.ACCESS_CONTROL_ALLOW_METHODS] = "OPTIONS, GET" resp.headers.extend(cors_headers(request.headers)) resp.headers.extend(cache_headers()) resp.headers.extend(session_cookie(request)) return resp
def info_options(self, request): resp = web.Response(status=204, content_type='application/json') resp.headers[hdrs.CACHE_CONTROL] = ( 'no-store, no-cache, must-revalidate, max-age=0') resp.headers[hdrs.ACCESS_CONTROL_ALLOW_METHODS] = 'OPTIONS, GET' resp.headers.extend(cors_headers(request.headers)) resp.headers.extend(cache_headers()) resp.headers.extend(session_cookie(request)) return resp
def info_options(self, request): resp = web.Response( status=204, content_type='application/json; charset=UTF-8') resp.headers[hdrs.CACHE_CONTROL] = ( 'no-store, no-cache, must-revalidate, max-age=0') resp.headers[hdrs.ACCESS_CONTROL_ALLOW_METHODS] = 'OPTIONS, GET' resp.headers.extend(cors_headers(request.headers)) resp.headers.extend(cache_headers()) resp.headers.extend(session_cookie(request)) return resp
async def handler(self, request): info = request.match_info # lookup transport tid = info["transport"] if tid not in self.handlers or tid in self.disable_transports: return web.HTTPNotFound() create, transport = self.handlers[tid] # session manager = self.manager if not manager.started: manager.start() sid = info["session"] if not sid or "." in sid or "." in info["server"]: return web.HTTPNotFound() try: session = manager.get(sid, create, request=request) except KeyError: return web.HTTPNotFound(headers=session_cookie(request)) t = transport(manager, session, request) try: return await t.process() except asyncio.CancelledError: raise except web.HTTPException as exc: return exc except Exception as exc: log.exception("Exception in transport: %s" % tid) if manager.is_acquired(session): await manager.release(session) return web.HTTPInternalServerError()
def handler(self, request): info = request.match_info # lookup transport tid = info['transport'] if tid not in self.handlers or tid in self.disable_transports: return web.HTTPNotFound() create, transport = self.handlers[tid] # session manager = self.manager if not manager.started: manager.start() sid = info['session'] if not sid or '.' in sid or '.' in info['server']: return web.HTTPNotFound() try: session = manager.get(sid, create, request=request) except KeyError: return web.HTTPNotFound(headers=session_cookie(request)) t = transport(manager, session, request) try: return (yield from t.process()) except asyncio.CancelledError: raise except web.HTTPException as exc: return exc except Exception as exc: log.exception('Exception in transport: %s' % tid) if manager.is_acquired(session): yield from manager.release(session) return web.HTTPInternalServerError()