本文整理汇总了Python中webob.descriptors.CHARSET_RE.search方法的典型用法代码示例。如果您正苦于以下问题:Python CHARSET_RE.search方法的具体用法?Python CHARSET_RE.search怎么用?Python CHARSET_RE.search使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webob.descriptors.CHARSET_RE
的用法示例。
在下文中一共展示了CHARSET_RE.search方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _charset__del
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def _charset__del(self):
header = self.headers.pop('Content-Type', None)
if header is None:
# Don't need to remove anything
return
match = CHARSET_RE.search(header)
if match:
header = header[:match.start()] + header[match.end():]
self.headers['Content-Type'] = header
示例2: _charset__get
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def _charset__get(self):
"""
Get/set the charset (in the Content-Type)
"""
header = self.headers.get('Content-Type')
if not header:
return None
match = CHARSET_RE.search(header)
if match:
return match.group(1)
return None
示例3: _charset__set
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def _charset__set(self, charset):
if charset is None:
del self.charset
return
header = self.headers.pop("Content-Type", None)
if header is None:
raise AttributeError("You cannot set the charset when no " "content-type is defined")
match = CHARSET_RE.search(header)
if match:
header = header[: match.start()] + header[match.end() :]
header += "; charset=%s" % charset
self.headers["Content-Type"] = header
示例4: _charset__get
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def _charset__get(self):
"""
Get/set the charset specified in Content-Type.
In the case JSON content where the charset param is not standards
compliant, we ignore this.
"""
header = self.headers.get('Content-Type')
if not header:
return None
match = CHARSET_RE.search(header)
if match:
return match.group(1)
return None
示例5: _charset__set
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def _charset__set(self, charset):
if charset is None:
del self.charset
return
header = self.headers.get('Content-Type', None)
if header is None:
raise AttributeError("You cannot set the charset when no "
"content-type is defined")
if _is_json(header):
return
match = CHARSET_RE.search(header)
if match:
header = header[:match.start()] + header[match.end():]
header += '; charset=%s' % charset
self.headers['Content-Type'] = header
示例6: __init__
# 需要导入模块: from webob.descriptors import CHARSET_RE [as 别名]
# 或者: from webob.descriptors.CHARSET_RE import search [as 别名]
def __init__(self, body=None, status=None, headerlist=None, app_iter=None,
content_type=None, conditional_response=None,
**kw):
if app_iter is None and body is None and ('json_body' in kw or 'json' in kw):
if 'json_body' in kw:
json_body = kw.pop('json_body')
else:
json_body = kw.pop('json')
body = json.dumps(json_body, separators=(',', ':'))
if content_type is None:
content_type = 'application/json'
if app_iter is None:
if body is None:
body = b''
elif body is not None:
raise TypeError(
"You may only give one of the body and app_iter arguments")
if status is None:
self._status = '200 OK'
else:
self.status = status
# initialize headers, content_type, and charset
self._headers = None
if headerlist is None:
self._headerlist = []
else:
self._headerlist = headerlist
content_type = content_type or self.headers.get('Content-Type') or \
self.default_content_type
if 'Content-Type' not in self.headers:
self.headers['Content-Type'] = content_type
charset = kw.get('charset')
if content_type:
if charset:
self.charset = charset
elif self.default_charset:
charset_match = CHARSET_RE.search(content_type)
if charset_match:
charset = self.charset
elif (content_type == 'text/html'
or content_type.startswith('text/')
or _is_xml(content_type)):
charset = self.default_charset
self.charset = charset
elif _is_json(content_type):
# don't set charset on the Content-Type for standards
# compliance, but still need it locally to encode body text
self.charset = None
charset = self.default_charset
if conditional_response is None:
self.conditional_response = self.default_conditional_response
else:
self.conditional_response = bool(conditional_response)
if app_iter is None:
if isinstance(body, text_type):
if charset is None:
raise TypeError(
"You cannot set the body to a text value without a "
"charset")
body = body.encode(charset)
app_iter = [body]
self.headers['Content-Length'] = str(len(body))
self._app_iter = app_iter
for name, value in kw.items():
if not hasattr(self.__class__, name):
# Not a basic attribute
raise TypeError(
"Unexpected keyword: %s=%r" % (name, value))
setattr(self, name, value)