本文整理汇总了Python中webob.request.Request类的典型用法代码示例。如果您正苦于以下问题:Python Request类的具体用法?Python Request怎么用?Python Request使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Request类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_content_length
def test_content_length():
r0 = Response('x'*10, content_length=10)
req_head = Request.blank('/', method='HEAD')
r1 = req_head.get_response(r0)
eq_(r1.status_code, 200)
eq_(r1.body, b'')
eq_(r1.content_length, 10)
req_get = Request.blank('/')
r2 = req_get.get_response(r0)
eq_(r2.status_code, 200)
eq_(r2.body, b'x'*10)
eq_(r2.content_length, 10)
r3 = Response(app_iter=[b'x']*10)
eq_(r3.content_length, None)
eq_(r3.body, b'x'*10)
eq_(r3.content_length, 10)
r4 = Response(app_iter=[b'x']*10,
content_length=20) # wrong content_length
eq_(r4.content_length, 20)
assert_raises(AssertionError, lambda: r4.body)
req_range = Request.blank('/', range=(0,5))
r0.conditional_response = True
r5 = req_range.get_response(r0)
eq_(r5.status_code, 206)
eq_(r5.body, b'xxxxx')
eq_(r5.content_length, 5)
开发者ID:perey,项目名称:webob,代码行数:31,代码来源:test_response.py
示例2: create_request_from_session
def create_request_from_session(url, session, timeout=DEFAULT_TIMEOUT,
verify=True):
try:
# Use session to follow redirects:
with closing(session.head(url, allow_redirects=True,
timeout=timeout,
verify=verify)) as head:
req = Request.blank(head.url)
req.environ['webob.client.timeout'] = timeout
# Get cookies from head:
cookies_dict = head.cookies.get_dict()
# Set request cookies to the head cookies:
req.headers['Cookie'] = ','.join(name + '=' +
cookies_dict[name]
for name in cookies_dict)
# Set the headers to the session headers:
for item in head.request.headers:
req.headers[item] = head.request.headers[item]
return req
except (MissingSchema, InvalidSchema):
# Missing schema can occur in tests when the url
# is not pointing to any resource. Simply pass.
req = Request.blank(url)
req.environ['webob.client.timeout'] = timeout
return req
except Timeout:
raise HTTPError('Timeout')
开发者ID:jblarsen,项目名称:pydap,代码行数:29,代码来源:net.py
示例3: test_content_length
def test_content_length():
r0 = Response('x' * 10, content_length=10)
req_head = Request.blank('/', method='HEAD')
r1 = req_head.get_response(r0)
assert r1.status_code == 200
assert r1.body == b''
assert r1.content_length == 10
req_get = Request.blank('/')
r2 = req_get.get_response(r0)
assert r2.status_code == 200
assert r2.body == b'x' * 10
assert r2.content_length == 10
r3 = Response(app_iter=[b'x'] * 10)
assert r3.content_length is None
assert r3.body == b'x' * 10
assert r3.content_length == 10
r4 = Response(app_iter=[b'x'] * 10,
content_length=20) # wrong content_length
assert r4.content_length == 20
with pytest.raises(AssertionError):
r4.body
req_range = Request.blank('/', range=(0, 5))
r0.conditional_response = True
r5 = req_range.get_response(r0)
assert r5.status_code == 206
assert r5.body == b'xxxxx'
assert r5.content_length == 5
开发者ID:doulbekill,项目名称:webob,代码行数:32,代码来源:test_response.py
示例4: tapp
def tapp(env, sr):
req = Request(env)
req = req.decode()
v = req.POST[req.query_string]
if hasattr(v, 'filename'):
r = Response(text_('%s\n%r' % (v.filename, v.value)))
else:
r = Response(v)
return r(env, sr)
开发者ID:SmartTeleMax,项目名称:webob,代码行数:11,代码来源:test_transcode.py
示例5: tapp
def tapp(env, sr):
req = Request(env)
#import pprint; pprint.pprint(req.environ)
#print(req.body)
req = req.decode()
#import pprint; pprint.pprint(req.environ)
#print(req.body)
v = req.POST[req.query_string]
if hasattr(v, 'filename'):
r = Response(text_('%s\n%r' % (v.filename, v.value)))
else:
r = Response(v)
return r(env, sr)
开发者ID:AgentJay,项目名称:webapp-improved,代码行数:13,代码来源:test_transcode.py
示例6: test_conditional_response_if_none_match_weak
def test_conditional_response_if_none_match_weak():
req = Request.blank('/', headers={'if-none-match': '"bar"'})
req_weak = Request.blank('/', headers={'if-none-match': 'W/"bar"'})
resp = Response(app_iter=['foo\n'], conditional_response=True, etag='bar')
resp_weak = Response(app_iter=['foo\n'], conditional_response=True, headers={'etag': 'W/"bar"'})
for rq in [req, req_weak]:
for rp in [resp, resp_weak]:
rq.get_response(rp).status_code == 304
r2 = Response(app_iter=['foo\n'], conditional_response=True, headers={'etag': '"foo"'})
r2_weak = Response(app_iter=['foo\n'], conditional_response=True, headers={'etag': 'W/"foo"'})
req_weak.get_response(r2).status_code == 200
req.get_response(r2_weak) == 200
开发者ID:perey,项目名称:webob,代码行数:13,代码来源:test_response.py
示例7: test_HEAD_conditional_response_range_empty_response
def test_HEAD_conditional_response_range_empty_response():
req = Request.blank('/',
method = 'HEAD',
range=(4,5),
)
res = Response('Are we not men?', conditional_response=True)
assert req.get_response(res).body == b''
开发者ID:perey,项目名称:webob,代码行数:7,代码来源:test_response.py
示例8: test_environ_getter_default_fset
def test_environ_getter_default_fset():
from webob.descriptors import environ_getter
req = Request.blank("/")
desc = environ_getter("akey", default="the_default")
desc.fset(req, "bar")
eq_(req.environ["akey"], "bar")
开发者ID:sigmavirus24,项目名称:webob,代码行数:7,代码来源:test_descriptors.py
示例9: test_upath_property_fset
def test_upath_property_fset():
from webob.descriptors import upath_property
req = Request.blank("/")
desc = upath_property("akey")
desc.fset(req, "avalue")
eq_(desc.fget(req), "avalue")
开发者ID:sigmavirus24,项目名称:webob,代码行数:7,代码来源:test_descriptors.py
示例10: test_accept_property_fdel
def test_accept_property_fdel():
desc = accept_property("Accept-Charset", "14.2")
req = Request.blank("/", environ={"envkey": "envval"})
desc.fset(req, "val")
assert desc.fget(req).header_value == "val"
desc.fdel(req)
eq_(type(desc.fget(req)), NilAccept)
开发者ID:ckey,项目名称:webob,代码行数:7,代码来源:test_acceptparse.py
示例11: test_operational_error
def test_operational_error():
app = ErrorMiddleware(myapp)
req = Request.blank('/')
resp = req.get_response(app, catch_exc_info=True)
assert resp.status_code == 503
assert 'Retry-After' in resp.headers
assert 'accessing the database' in resp.body
开发者ID:pacificclimate,项目名称:pdp,代码行数:7,代码来源:test_error.py
示例12: test_disconnect_detection_hinted_readline
def test_disconnect_detection_hinted_readline():
data = 'abc'*(1<<20)
req = Request.blank('/', POST=data)
req.is_body_seekable = False
line = req.body_file.readline(1<<16)
assert line
assert bytes_(data).startswith(line)
开发者ID:Natim,项目名称:webob,代码行数:7,代码来源:test_request_nose.py
示例13: test_environ_getter_nodefault_fget
def test_environ_getter_nodefault_fget():
from webob.descriptors import environ_getter
req = Request.blank("/")
desc = environ_getter("akey")
desc.fset(req, "bar")
assert req.environ["akey"] == "bar"
开发者ID:Pylons,项目名称:webob,代码行数:7,代码来源:test_descriptors.py
示例14: test_middleware_direct_call
def test_middleware_direct_call(self):
@wsgify.middleware
def mw(req, app):
return "foo"
app = mw(Response())
self.assertEqual(app(Request.blank("/")), "foo")
开发者ID:B-Rich,项目名称:webob,代码行数:7,代码来源:test_dec.py
示例15: test_environ_getter_nodefault_keyerror
def test_environ_getter_nodefault_keyerror():
from webob.descriptors import environ_getter
req = Request.blank("/")
desc = environ_getter("akey")
with pytest.raises(KeyError):
desc.fget(req)
开发者ID:Pylons,项目名称:webob,代码行数:7,代码来源:test_descriptors.py
示例16: test_multi_layer_dataset
def test_multi_layer_dataset(multi_layer_app, temp_file):
req = Request.blank("/")
resp = req.get_response(multi_layer_app)
assert resp.status == "200 OK"
for chunk in resp.app_iter:
temp_file.write(chunk)
temp_file.flush()
z = ZipFile(temp_file.name, "r", ZIP_DEFLATED)
assert z
# Should be 2 files for each layer
assert len(z.namelist()) == 2 * 4
assert "my_grid_0.asc" in z.namelist()
# find the first asc file
asc_filename = filter(lambda x: x.endswith(".asc"), z.namelist())[0]
with z.open(asc_filename, "r") as f:
data = f.read()
assert (
data
== """ncols 3
nrows 2
xllcorner -122.500000000000
yllcorner 53.000000000000
dx -0.500000000000
dy 1.000000000000
NODATA_value -9999
0 1 2
3 4 5
"""
)
开发者ID:pacificclimate,项目名称:pydap.responses.aaigrid,代码行数:35,代码来源:test_stuff.py
示例17: test_no_duplicate_headers
def test_no_duplicate_headers(real_data_test):
req = Request.blank(
"/pr+tasmax+tasmin_day_BCCA+ANUSPLIN300+ACCESS1-0_historical+rcp45_r1i1p1_19500101-21001231.h5.aig?tasmax&"
)
resp = req.get_response(real_data_test)
assert resp.status == "200 OK"
assert len(resp.headers.keys()) == len(set(resp.headers.keys()))
开发者ID:pacificclimate,项目名称:pydap.responses.aaigrid,代码行数:7,代码来源:test_stuff.py
示例18: test_aaigrid_response
def test_aaigrid_response(pcic_data_portal, url):
base = '/data/downscaled_gcms_archive/pr+tasmax+tasmin_day_'
req = Request.blank(url.format(base))
resp = req.get_response(pcic_data_portal)
assert resp.status == '200 OK'
assert resp.content_type == 'application/zip'
开发者ID:pacificclimate,项目名称:pdp,代码行数:7,代码来源:test_functional.py
示例19: test_conditional_response_if_modified_since_true
def test_conditional_response_if_modified_since_true():
from datetime import datetime, timedelta
req = Request.blank('/', if_modified_since=datetime(2011, 3, 17, 13, 0, 0))
resp = Response(app_iter=['foo\n'], conditional_response=True,
last_modified=req.if_modified_since + timedelta(seconds=1))
resp = req.get_response(resp)
assert resp.status_code == 200
开发者ID:doulbekill,项目名称:webob,代码行数:7,代码来源:test_response.py
示例20: test_climatology_bounds
def test_climatology_bounds(pcic_data_portal):
url = '/data/bc_prism/tmin_monClim_PRISM_historical_run1_197101-200012'\
'.nc.nc?climatology_bounds&'
req = Request.blank(url)
resp = req.get_response(pcic_data_portal)
assert resp.status == '200 OK'
assert resp.content_type == 'application/x-netcdf'
f = NamedTemporaryFile(suffix='.nc', delete=False)
for block in resp.app_iter:
f.write(block)
f.close()
nc = netCDF4.Dataset(f.name)
assert 'climatology_bounds' in nc.variables
assert_almost_equal(nc.variables['climatology_bounds'][:],
np.array([[0., 10988.],
[31., 11017.],
[59., 11048.],
[90., 11078.],
[120., 11109.],
[151., 11139.],
[181., 11170.],
[212., 11201.],
[243., 11231.],
[273., 11262.],
[304., 11292.],
[334., 11323.],
[0., 11323.]], dtype=np.float32))
nc.close()
os.remove(f.name)
开发者ID:pacificclimate,项目名称:pdp,代码行数:34,代码来源:test_functional.py
注:本文中的webob.request.Request类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论