本文整理汇总了Python中webob.Response.content_encoding方法的典型用法代码示例。如果您正苦于以下问题:Python Response.content_encoding方法的具体用法?Python Response.content_encoding怎么用?Python Response.content_encoding使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webob.Response
的用法示例。
在下文中一共展示了Response.content_encoding方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_decode_content_with_deflate
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test_decode_content_with_deflate():
res = Response()
b = 'Hey Hey Hey'
# Simulate inflate by chopping the headers off
# the gzip encoded data
res.body = zlib.compress(b)[2:-4]
res.content_encoding = 'deflate'
res.decode_content()
eq_(res.body, b)
eq_(res.content_encoding, None)
示例2: test_decode_content_gzip
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test_decode_content_gzip():
from gzip import GzipFile
io = StringIO()
gzip_f = GzipFile(filename='', mode='w', fileobj=io)
gzip_f.write('abc')
gzip_f.close()
body = io.getvalue()
res = Response()
res.content_encoding = 'gzip'
res.body = body
res.decode_content()
eq_(res.body, 'abc')
示例3: navigator
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def navigator():
open_folders = json.loads(request.POST.get('open_folders', '[]'))
# filer DirectoryAlone folders
open_folders = [folder for folder in open_folders if not isdir_alone(folder)]
log.debug('open_folders: ' + repr(open_folders))
xml_tree = ET.TreeBuilder()
xml_tree.start('span', {})
helpers.folder_div(request.path_info, xml_tree, open_folders=open_folders)
xml_tree.end('span')
xml = xml_tree.close()
resp = Response(ET.tostring(xml, encoding='utf-8').replace(''', "'"))
resp.content_type = 'text/html'
resp.content_encoding = 'utf-8'
return resp
示例4: do_index
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def do_index(self, req):
resp = Response()
resp.content_type = b'text/html'
resp.content_encoding = b'utf-8'
resp.text = """\
<html>
<head><title>Mancify</title></head>
<body>
<h1>Mancify</h1>
<p>Probably the silliest webapp in the world...</p>
</body>
</html>
"""
return resp
示例5: __call__
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def __call__(self):
"Generate the response"
if self.xmlreq.find("{DAV:}prop"):
# save only the tag of requested properties
props = [prop.tag for prop in self.xmlreq.find("{DAV:}prop").getchildren()]
resp_xml = self.gen_prop_tree(props)
elif self.xmlreq.find("{DAV:}allprop") is not None:
resp_xml = self.gen_prop_tree(self.ALLPROPS)
elif self.xmlreq.find("{DAV:}propname") is not None:
resp_xml = self.gen_prop_tree(self.ALLPROPS, only_names=True)
else:
raise exc.HTTPBadRequest(explanation="Unknown PROPFIND request body.")
## FIXME: fix unicode
resp_body = '<?xml version="1.0" encoding="utf-8" ?>'
resp_body += ET.tostring(resp_xml, encoding="utf-8")
resp = Response(resp_body)
resp.content_type = "application/xml"
resp.content_encoding = "utf-8"
resp.status_int = 207 # Multi Status
return resp
示例6: do_template
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def do_template(self, req, page, image=None):
"""
Serve a Chameleon template-based page
"""
resp = Response()
resp.content_type = 'text/html'
resp.content_encoding = 'utf-8'
try:
template = self.templates[page]
except ValueError:
self.not_found(req)
resp.text = template(
req=req,
page=page,
image=image,
helpers=self.helpers,
layout=self.layout,
flashes=self.flashes,
library=self.library,
camera=self.library.camera,
router=self.router)
del self.flashes[:]
return resp
示例7: float
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
request=request, conditional_response=True)
response.headers['Content-Type'] = file.metadata.get('Content-Type',
'application/octet-stream')
for key, value in file.metadata.iteritems():
if key.lower().startswith('x-object-meta-') or \
key.lower() in self.allowed_headers:
response.headers[key] = value
response.etag = file.metadata['ETag']
response.last_modified = float(file.metadata['X-Timestamp'])
response.content_length = file_size
if response.content_length < KEEP_CACHE_SIZE and \
'X-Auth-Token' not in request.headers and \
'X-Storage-Token' not in request.headers:
file.keep_cache = True
if 'Content-Encoding' in file.metadata:
response.content_encoding = file.metadata['Content-Encoding']
response.headers['X-Timestamp'] = file.metadata['X-Timestamp']
return request.get_response(response)
def HEAD(self, request):
"""Handle HTTP HEAD requests for the Swift Object Server."""
try:
device, partition, account, container, obj = \
split_path(unquote(request.path), 5, 5, True)
except ValueError, err:
resp = HTTPBadRequest(request=request)
resp.content_type = 'text/plain'
resp.body = str(err)
return resp
if self.mount_check and not check_mount(self.devices, device):
return HTTPInsufficientStorage(drive=device, request=request)
示例8: _retrieve_meta
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
)
content_length = slice_size
else:
status_int = httplib.OK
# 2012-09-06 dougfort Ticket #44 (temporary Connection: close)
response.headers["Connection"] = "close"
response.last_modified = last_modified
response.content_length = content_length
if content_type is None:
response.content_type = "application/octet-stream"
else:
response.content_type = content_type
if content_encoding is not None:
response.content_encoding = content_encoding
response.status_int = status_int
response.app_iter = retrieve_generator
return response
def _retrieve_meta(self, req, match_object, user_request_id):
collection_name = match_object.group("collection_name")
key = match_object.group("key")
self._log.debug("request {0}: _retrieve_meta".format(user_request_id))
try:
collection_row = self._authenticator.authenticate(collection_name, None, req)
except AccessForbidden, instance:
self._log.error("request {0}: forbidden {1}".format(user_request_id, instance))
示例9: test__abs_headerlist_location_with_scheme
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test__abs_headerlist_location_with_scheme():
res = Response()
res.content_encoding = 'gzip'
res.headerlist = [('Location', 'http:')]
result = res._abs_headerlist({})
eq_(result, [('Location', 'http:')])
示例10: test_decode_content_weird
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test_decode_content_weird():
res = Response()
res.content_encoding = 'weird'
assert_raises(ValueError, res.decode_content)
示例11: test_decode_content_identity
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test_decode_content_identity():
res = Response()
res.content_encoding = 'identity'
result = res.decode_content()
eq_(result, None)
示例12: test_encode_content_gzip_already_gzipped
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def test_encode_content_gzip_already_gzipped():
res = Response()
res.content_encoding = 'gzip'
result = res.encode_content('gzip')
eq_(result, None)
示例13: HTTPNotModified
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
return HTTPNotModified(request=request)
response = Response(app_iter=file, request=request, conditional_response=True)
response.headers["Content-Type"] = file.metadata.get("Content-Type", "application/octet-stream")
for key, value in file.metadata.iteritems():
if key.lower().startswith("x-object-meta-") or key.lower() in self.allowed_headers:
response.headers[key] = value
response.etag = file.metadata["ETag"]
response.last_modified = float(file.metadata["X-Timestamp"])
response.content_length = file_size
if response.content_length < self.keep_cache_size and (
self.keep_cache_private
or ("X-Auth-Token" not in request.headers and "X-Storage-Token" not in request.headers)
):
file.keep_cache = True
if "Content-Encoding" in file.metadata:
response.content_encoding = file.metadata["Content-Encoding"]
response.headers["X-Timestamp"] = file.metadata["X-Timestamp"]
self.logger.timing_since("GET.timing", start_time)
return request.get_response(response)
@public
def HEAD(self, request):
"""Handle HTTP HEAD requests for the Swift Object Server."""
start_time = time.time()
try:
device, partition, account, container, obj = split_path(unquote(request.path), 5, 5, True)
validate_device_partition(device, partition)
except ValueError, err:
self.logger.increment("HEAD.errors")
resp = HTTPBadRequest(request=request)
resp.content_type = "text/plain"
示例14: invalid_content_encoding_server
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import content_encoding [as 别名]
def invalid_content_encoding_server(environ, start_response):
response = Response("this is regular text that is lying about it's encoding")
response.content_encoding = "UTF-8" # UTF-8 is invalid, but found in the wild
return response(environ, start_response)