本文整理汇总了Python中werkzeug.wrappers.Response.content_type方法的典型用法代码示例。如果您正苦于以下问题:Python Response.content_type方法的具体用法?Python Response.content_type怎么用?Python Response.content_type使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类werkzeug.wrappers.Response
的用法示例。
在下文中一共展示了Response.content_type方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: application
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def application(request):
root_dir = os.getcwd()
path = request.path # todo: make sure path is sandboxed!
if path in ('', '/'):
path = '/index.html'
# todo: if path is a directory, append index.html to template name
env = Environment(loader=FileSystemLoader(root_dir))
response = Response()
response.status_code = 200
response.content_type = 'text/html; charset=utf-8'
## Try to get the template
try:
template = env.get_template(path)
except TemplateNotFound:
response.status_code = 404
try:
template = env.get_template('404.html')
except TemplateNotFound:
response.content_type = 'text/plain'
template = Template("PAGE NOT FOUND")
## Prepare and send the response
rendered = template.render(request=request, response=response)
response.set_data(rendered)
return response
示例2: __build_response
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def __build_response(self, output):
res = Response(output)
res.content_type = self.content_type
res.expires = datetime.today() + timedelta(7)
for header, value in self.__headers:
res.headers[header] = value
return res
示例3: get_file_response
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def get_file_response(self, path, request):
try:
full_path = find_file(self.search_paths, path)
if full_path is None:
raise NotFound()
file_obj = open(full_path, 'rb')
mtime = get_file_mtime(full_path)
fsize = os.path.getsize(full_path)
except (ValueError, IOError, OSError):
raise Forbidden()
mimetype, encoding = mimetypes.guess_type(full_path)
if not mimetype:
peeked = peek_file(file_obj, 1024)
is_binary = is_binary_string(peeked)
if peeked and is_binary:
mimetype = self.default_binary_mime
else:
mimetype = self.default_text_mime # TODO: binary
resp = Response('')
cached_mtime = request.if_modified_since
if self.cache_timeout:
resp.cache_control.public = True
if mtime == cached_mtime:
file_obj.close()
resp.status_code = 304
resp.cache_control.max_age = self.cache_timeout
return resp
file_wrapper = request.environ.get('wsgi.file_wrapper', FileWrapper)
resp.response = file_wrapper(file_obj)
resp.content_type = mimetype
resp.content_length = fsize
resp.last_modified = mtime
return resp
示例4: _getStaticResponse
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def _getStaticResponse(self):
rs = Response()
# find the static resource
path = [self.static_path]
path.extend(self.requested_path.split('/'))
path = os.path.join(*path)
# check last modified
modified_real = datetime.fromtimestamp(os.stat(path).st_mtime)
# check if cache is in browser and if it is new enough
if self.request.if_modified_since:
if modified_real <= self.request.if_modified_since:
# the cache is usable -> not modified status
rs.status_code=304
return rs
# cache is old, proceed serving
with open(path, 'r') as fh:
rs.data = fh.read()
rs.content_length = len(rs.data)
# set content type
try:
ext = path.split(".")[-1].lower()
except IndexError:
rs.content_type="text/text"
else:
rs.content_type = self._types.get(ext, 'text/text')
# set cache headers
rs.pragma = 'public'
rs.headers['Cache-Control']= "max-age=%d" % (24*3600)
expires = datetime.now()+timedelta(days=1)
rs.headers['Expires'] = http_date(expires)
rs.headers['Last-Modified'] = http_date(modified_real)
return rs
示例5: render_template
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def render_template(template_name, path, **context):
p = context['path'] = []
fp = ''
for entry in path:
fp = fp + '/' + entry
p.append({'fullpath': fp, 'entry': entry})
p.insert(0, {'fullpath': '/', 'entry': 'API Root'})
template = jinja_env.get_template(template_name)
response = Response(template.render(context))
response.content_type = 'text/html; charset=utf-8'
return response
示例6: handle_session_stopped
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def handle_session_stopped():
response = Response("""<html>
<body style="background-color: #EEE;">
<h3 style="width: 900px; background-color: #FFF; border: 2px solid #AAA; padding: 20px; font-family: Arial; margin: 20px auto">
Updating.
We will be back in a few moments...
</h3>
</body>
</html>""")
response.status_code = 503
response.content_type = 'text/html'
return response
示例7: render_json
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def render_json(request, element):
response = Response(json.dumps(element, sort_keys=False, indent=2))
response.content_type = 'application/json; charset=utf-8'
return response
示例8: cheetah_response
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def cheetah_response(template, content_type='text/html'):
r = Response(str(template))
r.content_type = content_type
return r
示例9: return_json
# 需要导入模块: from werkzeug.wrappers import Response [as 别名]
# 或者: from werkzeug.wrappers.Response import content_type [as 别名]
def return_json(view):
response = Response('', content_type="text/json; charset=UTF-8")
response.data = dumps(view)
response.content_length = len(response.data)
response.content_type = "application/json"
return response