diff options
author | xray7224 <jessica@megworld.co.uk> | 2013-07-11 20:24:20 +0100 |
---|---|---|
committer | xray7224 <jessica@megworld.co.uk> | 2013-07-11 20:24:20 +0100 |
commit | 1e2675b0c0ee2bf35705b538ec94978fe4f005d4 (patch) | |
tree | 5448fe60b71c060adc7bdde10d4a77310298073a /mediagoblin/decorators.py | |
parent | 786bbd79e8d77c06a9d86aee00edc4dd3e89d651 (diff) | |
download | mediagoblin-1e2675b0c0ee2bf35705b538ec94978fe4f005d4.tar.lz mediagoblin-1e2675b0c0ee2bf35705b538ec94978fe4f005d4.tar.xz mediagoblin-1e2675b0c0ee2bf35705b538ec94978fe4f005d4.zip |
Adds the decorator
Diffstat (limited to 'mediagoblin/decorators.py')
-rw-r--r-- | mediagoblin/decorators.py | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/mediagoblin/decorators.py b/mediagoblin/decorators.py index 1fdb78d7..ad36f376 100644 --- a/mediagoblin/decorators.py +++ b/mediagoblin/decorators.py @@ -18,6 +18,7 @@ from functools import wraps from urlparse import urljoin from werkzeug.exceptions import Forbidden, NotFound +from oauthlib.oauth1 import ResourceEndpoint from mediagoblin import mg_globals as mgg from mediagoblin import messages @@ -271,7 +272,7 @@ def auth_enabled(controller): return wrapper -def oauth_requeired(controller): +def oauth_required(controller): """ Used to wrap API endpoints where oauth is required """ @wraps(controller) def wrapper(request, *args, **kwargs): @@ -282,5 +283,18 @@ def oauth_requeired(controller): error = "Missing required parameter." return json_response({"error": error}, status=400) - - + + request_validator = GMGRequestValidator() + resource_endpoint = ResourceEndpoint(request_validator) + valid, request = resource_endpoint.validate_protected_resource_request( + uri=request.url, + http_method=request.method, + body=request.get_data(), + headers=dict(request.headers), + ) + #print "[VALID] %s" % valid + #print "[REQUEST] %s" % request + + return controller(request, *args, **kwargs) + + return wrapper |