def _getOAuthRequest(self, http_method, method, parameters={}, headers={}): if http_method == 'POST': url = self.getUrl(method, {}) else: url = self.getUrl(method, parameters) token = oauth.OAuthToken(self.client['tkey'], self.client['tsec']) oauth_request = oauth.OAuthRequest.from_consumer_and_token( self.consumer, token=token, http_method=http_method, http_url=url, parameters=parameters) oauth_request.sign_request(self.signature_method, self.consumer, token) headers.update(oauth_request.to_header()) if http_method == 'POST': headers['Content-Type'] = 'application/x-www-form-urlencoded' postdata = '&'.join(['%s=%s' % (oauth.escape(oauth._utf8_str(k)), oauth.escape(oauth._utf8_str(v))) \ for k, v in oauth_request.parameters.iteritems()]) else: postdata = "" return url, postdata, headers
def get_normalized_parameters(self): """Return a string that contains the parameters that must be signed.""" params = self.parameters try: # Exclude the signature if it exists. del params['oauth_signature'] except: pass # Escape key values before sorting. key_values = [] for k, values in params.iterlists(): for v in values: key_values.append((escape(_utf8_str(k)), escape(_utf8_str(v)))) # Sort lexicographically, first after key, then after value. key_values.sort() # Combine key value pairs into a string. return '&'.join(['%s=%s' % (k, v) for k, v in key_values])
def _getOAuthRequest(self, http_method, method, parameters={}, headers={}): if http_method == 'POST': url = self.getUrl(method, {}) else: url = self.getUrl(method, parameters) token = oauth.OAuthToken(self.client['tkey'], self.client['tsec']) oauth_request = oauth.OAuthRequest.from_consumer_and_token(self.consumer, token=token, http_method=http_method, http_url=url, parameters=parameters) oauth_request.sign_request(self.signature_method, self.consumer, token) headers.update(oauth_request.to_header()) if http_method == 'POST': headers['Content-Type'] = 'application/x-www-form-urlencoded' postdata = '&'.join(['%s=%s' % (oauth.escape(oauth._utf8_str(k)), oauth.escape(oauth._utf8_str(v))) \ for k, v in oauth_request.parameters.iteritems()]) else: postdata = "" return url, postdata, headers
def get_normalized_parameters(self): """Return a string that contains the parameters that must be signed.""" params = self.parameters try: # Exclude the signature if it exists. del params['oauth_signature'] except: pass # Escape key values before sorting. key_values = [] for key, value in params.iteritems(): if isinstance(value, basestring): esc_value = escape(_utf8_str(value)) esc_key = escape(_utf8_str(key)) key_values.append((esc_key, esc_value)) else: try: esc_value = escape(_utf8_str(value)) esc_key = escape(_utf8_str(key)) list(value) except TypeError, error: assert 'is not iterable' in str(error) key_values.append((esc_key, esc_value)) else: key_values.extend((escape(_utf8_str(key)), escape(_utf8_str(item)) if isinstance(item, basestring) else item) for item in value)
def get_normalized_parameters(self): """ Return a string that contains the parameters that must be signed. """ Log.debug("[Method] get_normalized_parameters") params = self.parameters try: # Exclude the signature if it exists. del params['oauth_signature'] except: pass # Escape key values before sorting. key_values = [] for key, value in params.iteritems(): if isinstance(key, basestring) and not _is_post_values_key(key): key_values.append((escape(_utf8_str(key)), escape(_utf8_str(value)))) else: try: value = list(value) except TypeError, e: assert 'is not iterable' in str(e) key_values.append((escape(_utf8_str(key)), escape(_utf8_str(value)))) else: if _is_post_values_key(key): key = _remove_post_values_key(key) key_values.extend((escape(_utf8_str(key)), escape(_utf8_str(item)) if isinstance(item, basestring) else item) for item in value)
def get_normalized_parameters(self): """Return a string that contains the parameters that must be signed.""" params = self.parameters try: # Exclude the signature if it exists. del params['oauth_signature'] except: pass # Escape key values before sorting. key_values = [] for key, value in params.iteritems(): if isinstance(value, basestring): esc_value = escape(_utf8_str(value)) esc_key = escape(_utf8_str(key)) key_values.append((esc_key, esc_value)) else: try: esc_value = escape(_utf8_str(value)) esc_key = escape(_utf8_str(key)) list(value) except TypeError, error: assert 'is not iterable' in str(error) key_values.append((esc_key, esc_value)) else: key_values.extend( (escape(_utf8_str(key)), escape(_utf8_str(item) ) if isinstance(item, basestring) else item) for item in value)
def get_normalized_parameters(self): """ Return a string that contains the parameters that must be signed. """ Log.debug("[Method] get_normalized_parameters") params = self.parameters try: # Exclude the signature if it exists. del params['oauth_signature'] except: pass # Escape key values before sorting. key_values = [] for key, value in params.iteritems(): if isinstance(key, basestring) and not _is_post_values_key(key): key_values.append( (escape(_utf8_str(key)), escape(_utf8_str(value)))) else: try: value = list(value) except TypeError, e: assert 'is not iterable' in str(e) key_values.append( (escape(_utf8_str(key)), escape(_utf8_str(value)))) else: if _is_post_values_key(key): key = _remove_post_values_key(key) key_values.extend( (escape(_utf8_str(key)), escape(_utf8_str(item) ) if isinstance(item, basestring) else item) for item in value)