本文整理汇总了Python中webob.Response.text方法的典型用法代码示例。如果您正苦于以下问题:Python Response.text方法的具体用法?Python Response.text怎么用?Python Response.text使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webob.Response
的用法示例。
在下文中一共展示了Response.text方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: app
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def app(environ, start_response):
tmpl = u'''<DOCTYPE !html>
<html><body><form method="POST" action="" enctype="multipart/form-data">
%s
<input type="submit" id="submit" name="submit" />
</form></body></html>'''
req = Request(environ)
resp = Response()
if fieldset is None:
fs = FieldSet(model)
else:
fs = fieldset.bind(model)
if req.method == 'POST':
if fieldset is None:
fs = fs.bind(request=req)
else:
fs = fs.bind(model=model, request=req)
if fs.validate():
fs.sync()
fs.readonly = True
resp.text = tmpl % ('<b>OK<b>' + fs.render(),)
else:
resp.text = tmpl % fs.render()
else:
resp.text = tmpl % fs.render()
return resp(environ, start_response)
示例2: __call__
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def __call__(self, env, start_response):
res = Response (content_type = 'text/plain', status = 200)
req = Request (env)
url = req.path_info
additional_params = dict(req.params)
additional_params['request'] = req
additional_params['response'] = res
additional_params['method'] = req.method
additional_params['headers'] = req.headers
found = False
for handler in UrlCallableFunction.request_handlers:
result = handler.call_if_matches (url, additional_params)
if result:
found = True
if isinstance (result, str):
res.text = result
elif isinstance (result, dict):
if 'body' in result: res.text = result['body']
if 'charset' in result: res.charset = result['charset']
if 'content_type' in result: res.content_type = result['content_type']
if 'additional_headers' in result: res.headers.update(result['additional_headers'])
if 'status' in result: res.status = result['status']
break
if not found:
res.status = 400
return res (env, start_response)
示例3: view_404
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def view_404(request):
response = Response()
user_data = get_user_data(request)
page_content = {'user_data': user_data}
response.status = '404 NOT FOUND'
response.text = templates.get_template('404.html').render(page_content)
return response
示例4: on_error
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def on_error(self, state, e):
run_hook.append('error')
r = Response()
r.text = u_('on_error')
return r
示例5: delete_profile
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def delete_profile(self, req):
"""
If the current path info refers to a specific ``session_uuid``, this
session will be removed. Otherwise, if it refers to `all`, then all
tracked session info will be removed.
``req``:
:class:`webob.Request` containing the environment information from
the request itself.
Returns a WSGI application.
"""
resp = Response(charset='utf8')
session_uuid = req.path_info_pop()
if session_uuid == "all":
deleted_rows = self._backend.delete_all()
elif session_uuid:
deleted_rows = self._backend.delete(session_uuid)
else:
deleted_rows = 0
session_uuids = req.POST.getall('session_uuids[]')
if session_uuids:
deleted_rows = self._backend.delete_many(session_uuids)
resp.text = u"%d row(s) deleted." % deleted_rows
return resp
示例6: application
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def application(self, environ, start_response):
req_webob = Request(environ)
res_webob = Response()
#addr tuple as glastopf expects it
remote_addr = (req_webob.remote_addr, int(environ["REMOTE_PORT"]))
if "SERVER_NAME" in environ and "SERVER_PORT" in environ:
# we could use socket.gethostbyname to get the ip...
sensor_addr = (environ["SERVER_NAME"], environ["SERVER_PORT"])
else:
sensor_addr = ("", "")
header, body = self.honeypot.handle_request(req_webob.as_text(),
remote_addr, sensor_addr)
for h in header.splitlines():
if ":" in h:
h, v = h.split(":", 1)
res_webob.headers[str(h.strip())] = str(v.strip())
# this will adjust content-length header
res_webob.charset = "utf8"
res_webob.text = body.decode("utf-8", "ignore")
#WSGI applications are not allowed to create or modify hop-by-hop headers
self.remove_hop_by_hop_headers(res_webob.headers)
return res_webob(environ, start_response)
示例7: application
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def application(self, environ, start_response):
req_webob = Request(environ)
res_webob = Response()
#addr tuple as glastopf expects it
remote_addr = (req_webob.remote_addr, int(environ["REMOTE_PORT"]))
if "SERVER_NAME" in environ and "SERVER_PORT" in environ:
# we could use socket.gethostbyname to get the ip...
sensor_addr = (environ["SERVER_NAME"], environ["SERVER_PORT"])
else:
sensor_addr = ("", "")
header, body = self.honeypot.handle_request(req_webob.as_text(),
remote_addr, sensor_addr)
header_list = header.splitlines()
try:
# format: http_version status_code description
res_webob.status_code = int(header_list[0].split()[1])
except ValueError:
# ['User-agent: *', 'Disallow:']
# default 200 OK
pass
for h in header_list:
if ":" in h:
h, v = h.split(":", 1)
res_webob.headers[str(h.strip())] = str(v.strip())
# this will adjust content-length header
res_webob.charset = "utf8"
res_webob.text = body.decode("utf-8", "ignore")
#WSGI applications are not allowed to create or modify hop-by-hop headers
self.remove_hop_by_hop_headers(res_webob.headers)
return res_webob(environ, start_response)
示例8: tree
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def tree(self, req):
typename = req.path_info_pop()
objid = req.path_info_pop()
gc.collect()
rows = []
objid = int(objid)
all_objs = gc.get_objects()
for obj in all_objs:
if id(obj) == objid:
objtype = type(obj)
if "%s.%s" % (objtype.__module__, objtype.__name__) != typename:
rows = ["<h3>The object you requested is no longer " "of the correct type.</h3>"]
else:
rows.append('<div class="obj">')
tree = ReferrerTree(obj, req)
tree.ignore(all_objs)
for depth, parentid, parentrepr in tree.walk(maxresults=1000):
rows.append(parentrepr)
rows.append("</div>")
break
if not rows:
rows = ["<h3>The object you requested was not found.</h3>"]
params = {"output": "\n".join(rows), "typename": cgi.escape(typename), "objid": str(objid)}
res = Response()
res.text = template(req, "tree.html", **params)
return res
示例9: index
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def index(self, req):
floor = req.GET.get("floor", 0)
rows = []
typenames = sorted(self.history)
for typename in typenames:
hist = self.history[typename]
maxhist = max(hist)
if maxhist > int(floor):
row = (
'<div class="typecount">%s<br />'
'<img class="chart" src="%s" /><br />'
'Min: %s Cur: %s Max: %s <a href="%s">TRACE</a></div>'
% (
cgi.escape(typename),
url(req, "chart/%s" % typename),
min(hist),
hist[-1],
maxhist,
url(req, "trace/%s" % typename),
)
)
rows.append(row)
res = Response()
res.text = template(req, "graphs.html", output="\n".join(rows))
return res
示例10: login
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def login(request):
response = Response()
# Если пользователь залогинен, он не сможет попасть на страницу login
user_auth = is_auth_user(request)
if user_auth:
return redirect_to_home(request)
errors = {}
data = {}
if request.POST:
login = data['login'] = request.POST['login'].strip()
password = data['password'] = request.POST['password'].strip()
if not validate_password(password):
errors['password'] = u'Длина пароля должна быть от 6 до 16 символов'
if not validate_login(login):
errors['login'] = u'Длина Логина должна быть от 1 до 25 символов'
if not errors:
user_db = get_user_from_login(login)
if user_db and user_db.password == md5(password):
response = authorization(response, user_db)
return redirect_to_home(request, response)
else:
errors['user'] = u"Неверное имя пользователя или пароль"
page_content = {'errors': errors, 'data': data}
response.text = templates.get_template('login.html').render(page_content)
return response
示例11: render
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def render(self, request, path, **context):
response = Response(status=200)
template = self.loader.load(Environment(), path)
context['settings'] = self.settings
context['request'] = request
context['app'] = self.app
response.text = template.render(**context)
return response
示例12: application
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def application(environ, start_response):
logfile_encoding = CONFIG.get('charset', 'utf-8') # XXX: actually depends on the date (see below)
response_encoding = 'utf-8'
template_encoding = 'utf-8'
STATIC = ['jquery.js', 'transcript.js']
template = CONFIG.get('template', path_from_here('template.html'))
channel = CONFIG.get('channel', '')
path = CONFIG.get('path', '')
path_info = Request(environ).path_info[1:] # remove leading /
if path_info in STATIC:
app = serve_static(path_from_here(path_info))
return app(environ, start_response)
if not path_info:
date = datetime.date.today()
location = 'archives/{:%Y/%m/%d/}'.format(date)
return redirect(environ, start_response, location)
else:
try:
date = datetime.datetime.strptime(path_info, 'archives/%Y/%m/%d/').date()
except ValueError:
return r404(environ, start_response)
# XXX: logfiles changed encoding at some point
if date <= datetime.date(2011, 6, 5):
logfile_encoding = 'latin1'
filename = 'log-{:%Y-%m-%d}.txt'.format(date)
filepath = os.path.join(path, filename)
if not os.path.isfile(filepath):
return r404(environ, start_response)
output = parse('#%s' % channel, filepath, logfile_encoding)
archives = get_archives(path, active=date)
with codecs.open(template, encoding=template_encoding) as fd:
tpl = fd.read()
body = tpl % {
'channel': channel,
'body': output,
'archives': archives,
'stylesheets': get_stylesheets(),
'header': get_header(),
'date': date.strftime('%Y/%m/%d'),
}
resp = Response(
content_type="text/html",
charset=response_encoding,
)
resp.text = body
return resp(environ, start_response)
示例13: __call__
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def __call__(self, environ, start_response):
res = Response()
res.text = text_type(self.body)
res.status = '200 OK'
res.content_type = 'application/json'
res.charset = 'utf-8'
res.headers.add('Content-description', 'dods_version')
res.headers.add('XDODS-Server', 'pydap/%s' % __version__)
return res(environ, start_response)
示例14: __call__
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def __call__(self, environ, start_response):
res = Response()
res.text = self.body
res.status = '500 Internal Error'
res.content_type = 'text/plain'
res.charset = 'utf-8'
res.headers.add('Content-description', 'dods_error')
res.headers.add('XDODS-Server', 'pydap/%s' % __version__)
return res(environ, start_response)
示例15: __call__
# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import text [as 别名]
def __call__(self, req):
if req.method != 'GET':
raise exc.HTTPMethodNotAllowed()
file = os.path.join(self.rootdir, req.path.lstrip('/'))
if os.path.isfile(file) and file.endswith(self.wikiext):
res = Response(content_type='text/html', charset=self.encoding)
wikitext = codecs.open(file, encoding=self.encoding).read()
wikitext = markdown(wikitext)
res.text = self.pagetemplate.format(wikitext)
return res
return req.get_response(self.wsgiapp)