Yun Xu
75378d3567
add remote_addr property for proxy fix
2017-07-14 09:29:16 -07:00
Yun Xu
235687d983
should call lower just once
2017-07-10 12:37:21 -07:00
Yun Xu
3d75e6ed95
case-insensitive check for header fields
2017-07-10 12:29:47 -07:00
François KUBLER
1f24abc3d2
Fixed support for "Bearer" and "Token" auth-schemes.
...
Removed the test for "Authentication: Bearer Token <TOKEN>" which was not supposed to exist (see https://github.com/channelcat/sanic/pull/821 )
Also added a call to `split` when retrieving the token value to handle cases where there are leading or trailing spaces.
2017-06-29 10:23:49 +02:00
François KUBLER
d2e14abfd5
Inverted the order of prefixes in Request.token property.
...
As suggested by @allan-simon
See: https://github.com/channelcat/sanic/pull/811#pullrequestreview-46144327
2017-06-27 12:57:47 +02:00
François KUBLER
55f860da2f
Added support for 'Authorization: Bearer <TOKEN>' header in Request.token
property.
...
Also added a test case for that kind of header.
2017-06-22 18:11:23 +02:00
Yun Xu
20138ee85f
add match_info to request
2017-06-17 09:47:58 -07:00
Yun Xu
aac99c45c0
add content_type property in request
2017-06-07 20:46:48 -07:00
Eli Uriegas
48de321869
Merge pull request #697 from 38elements/stream
...
Add Request.stream
2017-05-24 16:22:52 -07:00
Raphael Deem
0e4aaf8856
Merge pull request #731 from jrocketfingers/fix/token-missing-auth-headers
...
Check that the Authorization headers are actually provided.
2017-05-17 13:10:12 -07:00
Raphael Deem
974fe25a11
Merge pull request #722 from messense/feature/ci-without-ext
...
Add py3*-no-ext test env
2017-05-17 12:47:05 -07:00
Johnny
5d309af86f
Check that the headers are actually provided.
2017-05-17 11:08:50 +02:00
messense
7cc02e84ed
Fix json loads bug on Python 3.5
2017-05-17 12:12:25 +08:00
Johnny Rocketfingers
b1890f50b6
Conform to pep8
2017-05-14 10:15:11 +02:00
Johnny Rocketfingers
b44c707e94
Prevent incorrect tuple size on get_extra_info errors
...
According to https://docs.python.org/3/library/asyncio-protocol.html#asyncio.BaseTransport.get_extra_info ,
get_extra_info fails by returning None. This is an attempt in
normalization of the response in cases of AF_INET, AF_INET6 and
erroneous return values.
2017-05-14 09:56:56 +02:00
38elements
ef2cc7ebf5
Add Request.stream
2017-05-07 18:38:48 +09:00
banteg
7754bb995b
expose matched request uri template
2017-04-29 02:39:56 +07:00
Raphael Deem
a0cba1aee1
accept token directly in auth header
2017-04-21 22:36:45 -07:00
monobot
5b704478d9
raw_args for request objects
2017-03-29 22:06:54 +01:00
Jing Su
250bb7e29d
add websocket secure scheme in request @messense
2017-03-13 18:34:43 +08:00
Jing Su
3af26540ec
add websocket scheme in request
2017-03-13 13:28:35 +08:00
Raphael Deem
88bf78213f
Merge pull request #512 from subyraman/fix-url-building
...
Fix `request.url` and other url properties
2017-03-10 00:38:16 -08:00
Raphael Deem
90138c4bae
return valid json in request.json
2017-03-07 18:03:45 -08:00
Suby Raman
e792a1e030
add host test
2017-03-03 14:51:13 -05:00
Suby Raman
1fbde87ec2
initial commit
2017-03-03 11:44:50 -05:00
Eli Uriegas
56ecb6a3ea
Inject app into request object
...
Allows for injection of the app object into the request object through
the request handler.
This allows for users to setup things like database connections etc. in
listeners and then utilize them throughout the their various route
handlers.
Usage is fairly simple like so:
```python
@app.get('/')
async def handler(request):
request.app.anything
```
Name is up in the air but I'll leave this up for a few days and I'll
change it if we get a consensus
2017-02-22 11:34:14 -06:00
Eli Uriegas
483b442b7d
Default request.args to RequestParameters
2017-02-16 15:54:20 -06:00
Alec Buckenheimer
f9ab24a077
#449 use stdlib json module if ujson is unavailible
2017-02-16 15:03:52 -05:00
Eli Uriegas
54b2d74068
Get rid of relative imports
2017-02-15 20:54:00 -06:00
Angus Hollands
51611c3934
Pep8 cleanups ( #429 )
...
* PEP8 cleanups
* PEP8 cleanups (server.py)
* PEP8 cleanups (blueprints.py)
* PEP8 cleanups (config.py)
* PEP8 cleanups (cookies.py)
* PEP8 cleanups (handlers.py)
* PEP8 cleanups (request.py)
* PEP8 cleanups (response.py)
* PEP8 cleanups (router.py)
* PEP8 cleanups (sanic.py) #2
* PEP8 cleanups (server.py) #2
* PEP8 cleanups (static.py)
* PEP8 cleanups (utils.py)
* PEP8 cleanups (views.py)
Updated docstring
2017-02-14 13:10:19 -06:00
Channel Cat
fd118a41fd
Only use request.body
2017-01-25 21:56:49 -08:00
Eli Uriegas
a7cd4ccd09
Simplify RequestParameters
...
Simplifies request parameters, it defined a bit more than it had too,
added some docstrings and made the code simpler as well. Should now
raise a KeyError on __getitem__ as @amsb had noted on commit 9dd954b
2017-01-20 14:31:24 -06:00
Cadel Watson
9d4b104d2d
Merge branch 'master' into sphinx-docs
2017-01-19 08:48:54 +11:00
Guilherme Polo
5903dd2939
cannot use the new .ip without updating __slots__
2017-01-17 02:58:45 -02:00
Raphael Deem
9bc69f7de9
use hasattr
2017-01-16 17:35:08 -08:00
Eli Uriegas
5c344f7efa
Remove redundant else
2017-01-16 17:51:56 -06:00
Raphael Deem
213580ea78
cache the remote IP property
2017-01-16 15:48:55 -08:00
Ubuntu
2cf4baddfb
Moved Remote-Addr header to request.ip so it can be pulled on-demand
2017-01-16 23:27:50 +00:00
Eli Uriegas
9dd954bccd
Update request.form to work with __getitem__
2017-01-11 16:55:34 -06:00
Eli Uriegas
baf8254907
Change Ellipsis to None for consistency
2017-01-05 15:29:57 -06:00
Hyunjun Kim
035cbf84ae
Cache request.json even when it's null or empty
...
In case of request body is set to `{}`, `[]` or `null`, even it's
already processed, parsed_json won't be used due to its boolean
evaluation.
2017-01-02 14:20:20 +09:00
Sean Parsons
986b0aa106
Added token property to request object.
2016-12-26 06:41:41 -05:00
Cadel Watson
52c59e7133
Fix all docstring errors.
...
When generating documentation with sphinx-apidoc, there are currently
many docstring errors, mostly minor. This commit fixes all errors.
2016-12-25 20:43:45 +11:00
Raphael Deem
457507d8dc
return 400 on invalid json post data
2016-12-07 20:40:31 -08:00
Jack Fischer
c34427690a
Merge branch 'master' of git://github.com/channelcat/sanic
2016-12-03 15:08:07 -05:00
Derek Schuster
190b7a6076
improving comments and examples
2016-11-28 14:00:39 -05:00
Jack Fischer
0c215685f2
refactoring cookies
2016-11-27 08:30:46 -05:00
Jack Fischer
d86ac5e3e0
fix for cookie header capitalization bug
2016-11-26 11:20:29 -05:00
Eli Uriegas
fc19f2ea34
Merge pull request #163 from channelcat/request-data-vars
...
Access Request like a dictionary
Closes #129 #132
2016-11-23 13:51:17 -06:00
Channel Cat
993627ec44
Merged with master
2016-11-19 18:21:44 -08:00
Channel Cat
a97e554f8f
Added shared request data
2016-11-19 17:48:28 -08:00
jiajunhuang
9eb4cecbc1
fix the way using logging.exception
2016-11-19 15:19:38 +08:00
Pahaz Blinov
0d9fb2f927
docs(request): return value docstring
2016-11-09 18:04:15 +05:00
Pahaz Blinov
0e9819fba1
fix(request): parse_multipart_form should return RequestParameters
...
I have this code:
```
form = FileForm(request.files)
```
and it raise error because the `request.files` is `dict` but `RequestParameters` is expected =/
2016-11-09 00:36:37 +05:00
Pahaz Blinov
5efe51b661
fix(request.py): problem in case of request without content-type header ( #142 )
...
* fix(request.py): exception if access request.form on GET request
* fix(request): just make a unification (parsed_form and parsed_files) + RFC fixes
parsed_form and parsed_files must be a RequestParameters type in all cases!
2016-11-07 15:27:50 -06:00
imbolc
3cd3b2d9b7
Fix upload without content-type
2016-11-03 12:34:55 +07:00
Channel Cat
3802141007
Adding cookie capabilities for issue #74
2016-10-23 01:32:16 -07:00
Channel Cat
031a95e4d9
Merge pull request #39 from seemethere/fix_flake8_errors
...
Fix flake8 errors
2016-10-16 13:54:36 -07:00
abhishek7
3c7a8a5f45
Added some documentation to request.py, removed extra line in blueprints.py, and minor grammar enhancements to blueprints.md and middleware.md
2016-10-16 11:35:45 -04:00
Eli Uriegas
ea0a037248
Fix flake8 errors
2016-10-16 08:01:59 -05:00
Channel Cat
9d388e9933
Fixed flake8 errors
2016-10-16 02:21:24 -07:00
Michael Lavers
9f824b048e
Introduce end-of-line normalization
2016-10-15 12:59:00 -07:00
Channel Cat
254861bc37
Reformatted code to use spaces instead of tabs
2016-10-14 19:53:49 -07:00
Channel Cat
a74ab9bd18
Added tests and middleware, and improved documentation
2016-10-14 03:23:48 -07:00
Channel Cat
49c499f44d
Added examples and form processing
2016-10-09 15:28:31 -07:00
Channel Cat
b0d38f8a04
Performance degraded - added in request too large and keep-alive timeout
2016-10-08 17:27:10 -07:00
Channel Cat
fa980b1445
Performance improvements to url parsing
2016-10-08 16:04:18 -07:00
Channel Cat
e8287df3e5
Fixed POST request getting JSON
2016-10-06 01:23:52 -07:00
Channel Cat
4489f536da
.
2016-10-03 00:45:59 -07:00
Channel Cat
ee98c8b42f
.
2016-10-03 07:27:54 +00:00
Channel Cat
7cdeff63f6
Decode data by default
2016-10-02 23:55:46 -07:00