本文整理汇总了Python中twisted.web.resource.Resource.render方法的典型用法代码示例。如果您正苦于以下问题:Python Resource.render方法的具体用法?Python Resource.render怎么用?Python Resource.render使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类twisted.web.resource.Resource
的用法示例。
在下文中一共展示了Resource.render方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
self._session_id = request.getHeader('x-apple-session-id')
if self._session_id == None:
self._session_id = 'dummy'
else:
self._protocolHandler.sessionID = self._session_id
request.responseHeaders.removeHeader('Content-Type')
request.responseHeaders.removeHeader('Server')
Resource.render(self, request)
return 1
示例2: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
""" Invoke appropriate handler function.
This is where the incoming HTTP request first lands.
Dispatch the request to corresponding handler function based
on the request method (get/put/post/...).
"""
methodname, method = self._getMethod(request)
try:
if method:
d = defer.maybeDeferred(
self._executeHandler,
methodname,
method,
request)
d.addCallback(self._createResponse, request)
d.addErrback(self._errorResponse)
d.addCallback(self._prepareResponse, request)
return NOT_DONE_YET
else:
# let the base class handle 405
return ResourceBase.render(self, request)
finally:
self.log.info('"%s %s" %d' % (
request.method,
request.path,
request.code if method else 501))
示例3: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
try:
return Resource.render(self, request)
except BadOption as e:
self._write_error(request, 400, e)
self._log_stats(request, {}, error=self._format_error(400, e))
return b"\n"
示例4: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
try:
return Resource.render(self, request)
except:
log.err()
return """{"message": "We were unable to handle your api request.", "success": false}"""
示例5: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
session = get_current_session(request)
authresponse = self._checkAuth(request)
if authresponse != None:
return authresponse
else:
return Resource.render(self, request)
示例6: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
"Disable cache of renderable resources"
request.setHeader('Expires', 'Fri, 25 Nov 1966 08:22:00 EST')
request.setHeader("Cache-Control", "no-store, no-cache, must-revalidate")
request.setHeader("Pragma", "no-cache")
request.setHeader("X-XSS-Protection", "0")
return Resource.render(self, request)
示例7: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, *args, **kwargs):
ret = Resource.render(self, *args, **kwargs)
if ret is not NOT_DONE_YET:
ret = json.dumps(ret, indent=2) if not isinstance(ret, basestring) else ret
if not ret.endswith('\n'):
ret += '\n'
return ret
示例8: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
request.setHeader('Content-Type', 'application/json; charset=utf8')
user = request.getUser()
passwd = request.getPassword()
m = hashlib.sha256()
m.update(passwd)
if m.hexdigest() != settings.ADMIN_PASSWORD_SHA256:
request.setResponseCode(401)
return '"Authorisation required!"'
links = []
for c in self.children:
if isinstance(self.children[c], RestResource) and c != '':
links.append('</%s>; rel="%s"' % (c, c))
if len(links) > 0:
request.setHeader('Link', ", ".join(links))
self.path_or_id = self.get_path_id(request)
if request.method == 'POST' and self.path_or_id != '':
request.setResponseCode(405)
return '"Cannot call POST on a resource with an identifier"'
if (request.method == 'PUT' or request.method == 'DELETE') and self.path_or_id == '':
request.setResponseCode(405)
return '"Cannot call PUT or DELETE without an identifier"'
return Resource.render(self, request)
示例9: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
request.initialize(self)
result = Resource.render(self, request)
if result == NOT_DONE_YET:
return result
request.finalize()
return result.encode("UTF-8")
示例10: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
try:
return Resource.render(self, request)
except UnsupportedMethod, e:
Logr.debug("(%s) unhandled method %s",
self.service.serviceType, request.method)
raise e
示例11: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
start = time.time()
try:
return Resource.render(self, request)
except Exception, e:
log.err(e)
request.content.reset()
log.err('Error: input: %s' % request.content.read())
示例12: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
session = get_current_session(request)
redirect_uri = self._authredirect(request)
if redirect_uri != None:
session.return_uri = request.uri
return redirect(request, redirect_uri)
else:
return Resource.render(self, request)
示例13: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
if self.cors:
request.setHeader('Access-Control-Allow-Origin', '*')
request.setHeader('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS')
request.setHeader('Access-Control-Allow-Headers', 'authorization, content-type')
if request.method != "OPTIONS" or not self.cors:
return Resource.render(self, request)
else:
return ""
示例14: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
try:
request.setHeader('Content-Type', 'text/xml')
return Resource.render(self, request)
except UnsupportedMethod, e:
log.msg("unsupported: (%s) %s" % (
self.service.serviceType,
request.method),
loglevel=logging.DEBUG)
raise e
示例15: render
# 需要导入模块: from twisted.web.resource import Resource [as 别名]
# 或者: from twisted.web.resource.Resource import render [as 别名]
def render(self, request):
request.setResponseCode(200)
request.setHeader('Content-Type', 'application/json')
try:
return Resource.render(self, request)
except IOError as ex:
if ex.errno == errno.ENOENT:
return NoResource().render(request)
else:
raise
except ErrorPage as ex:
return ex.render(request)