D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
lib
/
python3.6
/
site-packages
/
oauthlib
/
oauth1
/
rfc5849
/
endpoints
/
__pycache__
/
Filename :
base.cpython-36.pyc
back
Copy
3 ,�[s( � @ sl d Z ddlmZmZ ddlZddlmZmZ ddlm Z m Z mZmZm Z mZmZmZmZ G dd� de�ZdS ) z� oauthlib.oauth1.rfc5849.endpoints.base ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This module is an implementation of various logic needed for signing and checking OAuth 1.0 RFC 5849 requests. � )�absolute_import�unicode_literalsN)�Request�generate_token� ) �CONTENT_TYPE_FORM_URLENCODED�SIGNATURE_HMAC� SIGNATURE_RSA�SIGNATURE_TYPE_AUTH_HEADER�SIGNATURE_TYPE_BODY�SIGNATURE_TYPE_QUERY�errors� signature�utilsc @ s@ e Zd Zddd�Zdd� Zdd� Zdd � Zd d� Zdd d�ZdS )�BaseEndpointNc C s || _ |pt| _d S )N)�request_validatorr �token_generator)�selfr r � r �/usr/lib/python3.6/base.py�__init__ s zBaseEndpoint.__init__c C s� t j|jddd�}t j|jdd�}t j|jdd�}g }|j|� |j|� |j|� ttdd� t|t j |�ft|t j |�ft|t j |�ff��}t |�dkr�d d � |D �}tjddj|�fd ��y|d \}}} W n tk r� tjdd ��Y nX ||| fS )z�Extracts parameters from query, headers and body. Signature type is set to the source in which parameters were found. FT)�headers�exclude_oauth_signatureZ with_realm)�bodyr )� uri_queryr c S s | d S )Nr r )�sr r r �<lambda>+ s z=BaseEndpoint._get_signature_type_and_params.<locals>.<lambda>� c S s g | ]}|d �qS )r r )�.0r r r r � <listcomp>5 s z?BaseEndpoint._get_signature_type_and_params.<locals>.<listcomp>zFoauth_ params must come from only 1 signaturetype but were found in %sz, )�descriptionr z#Missing mandatory OAuth parameters.)r Zcollect_parametersr r r �extend�list�filterr r Zfilter_oauth_paramsr r �lenr �InvalidRequestError�join� IndexError) r �requestZ header_paramsZbody_paramsZquery_params�paramsZ!signature_types_with_oauth_paramsZfound_types�signature_type�oauth_paramsr r r �_get_signature_type_and_params s: z+BaseEndpoint._get_signature_type_and_paramsc C s" |pi }d|kr,t |d kr,t||||�}nt||d|�}| j|�\}}}tt|��t|�krjtjdd��t|�}|jd�|_|jd�|_ |jd�|_ |jd�|_|jd �|_|jd �|_ |jd�|_|jd�|_t|�jd �|_||_dd� |D �|_d |jjdd�k�rdd� |jD �|_|S )NzContent-Type� zDuplicate OAuth1 entries.)r �oauth_signatureZoauth_consumer_keyZoauth_tokenZoauth_nonceZoauth_timestampZoauth_callbackZoauth_verifierZoauth_signature_method�realmc S s g | ]\}}|d kr||f�qS )r. r )r �k�vr r r r d s z0BaseEndpoint._create_request.<locals>.<listcomp>Z Authorizationc S s g | ]\}}|d kr||f�qS )r/ r )r r0 r1 r r r r g s )r r r, r$ �dictr r% �getr � client_key�resource_owner_key�nonce� timestampZredirect_uriZverifier�signature_methodr/ r+ r) r ) r �uriZhttp_methodr r r( r* r) r+ r r r �_create_requestD s2 zBaseEndpoint._create_requestc C s&