Exemple #1
0
def get_oauth_token(config):
    global consumer
    global client
    global req_token

    consumer = oauth.Consumer(config.consumer_key, config.consumer_secret)
    client = oauth.Client(consumer)
    resp, content = client.request(config.request_token_url, "GET")

    if resp["status"] != "200":
        raise Exception(f"Invalid response {resp['status']}")

    request_token = dict(parse_qsl(content.decode("utf-8")))
    req_token = RequestToken(**request_token)
Exemple #2
0
def get_oauth_token(config):

    global consumer
    global client
    global req_token

    consumer = oauth.Consumer(config.consumer_key, config.consumer_secret)
    client = oauth.Client(consumer)

    resp, content = client.request(config.request_token_url, 'GEI')

    if resp['status'] != '200':
        raise Exception("Invalid response{}".format(resp['status']))

    request_token = dict(parse_qsl(content.decode('utf-8')))
    req_token = RequestToken(**request_token)
Exemple #3
0
def oauth_authorize(request):
    """
    Display a form that will allow/disallow user to authorize
    consumers. Requires the target user to login.
    """
    try:
        user = request.user
        oauth_request, oauth_server = initialize_oauth(request)

        token = oauth_request.get_parameter("oauth_token")
        request_token = RequestToken.all().filter("token_key =", token).get()
        consumer = request_token.consumer
        oauth_request.set_parameter("oauth_consumer_key", consumer.consumer_key)
        token = oauth_server.fetch_request_token(oauth_request)

        return render_to_response("core/oauth/authorize.html", {"consumer": consumer, "token": token})
    except OAuthError, e:
        logging.debug(e)
        logging.debug(e.message)
        return BadRequest(e.message)
Exemple #4
0
def oauth_authorized(request):
    """
    Authorize the consumer to access the user's protected resource.
    Redirect back to callback_url provided during app registration or
    during the request_token phase.
    """
    try:
        oauth_request, oauth_server = initialize_oauth(request)

        user = request.user
        token = oauth_server.fetch_request_token(oauth_request)
        new_token = oauth_server.authorize_token(token, user)
        verifier = new_token.set_verifier()
        request_token = RequestToken.all().filter("token_key =", new_token.key).get()
        new_token.set_callback(request_token.consumer.callback_url)
        url = new_token.get_callback_url()
        return redirect("%s&%s" % (url, urllib.urlencode({"oauth_token": new_token.key})))
    except OAuthError, e:
        logging.debug(e)
        logging.debug(e.message)
        return InternalServerError()
Exemple #5
0
def test_request_token(request):
    oauth_token = request.values.get("oauth_token", None)
    request_token = RequestToken.all().filter("token_key =", oauth_token).get()
    token = OAuthToken(request_token.token_key, request_token.token_secret)
    return Response(token.to_string(), content_type="application/x-www-form-urlencoded")