def post(self, text, token='', secret=''): """Do a LinkedIn profile update.""" url = self._config['update_url'] data = self._set_status % { 'status': text.encode('utf-8'), } token = oauth.OAuthToken(token, secret) request = oauth.OAuthRequest.from_consumer_and_token( self._consumer, token=token, http_url=url, http_method='PUT', ) request.sign_request( self._signature_method, self._consumer, token, ) urlfetch.fetch( url, payload=data, method=urlfetch.PUT, headers=request.to_header(), )
def post(self, text, token='', secret=''): """Do a Twitter profile update.""" url = self._config['update_url'] % { 'format': 'json', } data = { 'status': text.encode('utf-8'), } data = urllib.urlencode(data) token = oauth.OAuthToken(token, secret) request = oauth.OAuthRequest.from_consumer_and_token( self._consumer, token=token, http_url=url, http_method='POST', ) request.set_parameter('status', text) request.sign_request( self._signature_method, self._consumer, token, ) response = urlfetch.fetch( url, payload=data, method=urlfetch.POST, headers=request.to_header(), ) return json.loads(response.content)
def _make_protected_request(self, token, secret, headers=False): """Makes a protected OAuth request object.""" url = self._config['account_verification_url'] token = oauth.OAuthToken(token, secret) request = oauth.OAuthRequest.from_consumer_and_token( self._consumer, token=token, http_url=url, ) request.sign_request( self._signature_method, self._consumer, token, ) if headers: # LinkedIn requires the parameters to be sent as headers return urlfetch.fetch(url, headers=request.to_header()) # Twitter works fine with URL query string parameters return urlfetch.fetch(request.to_url(), headers={'Authorization': 'OAuth'})
def _make_callback_request(self, callback_url): """Makes a generic OAuth request.""" request = oauth.OAuthRequest.from_consumer_and_token( self._consumer, callback=callback_url, http_url=self._config['request_token_url'], ) request.sign_request( self._signature_method, self._consumer, None, ) return urlfetch.fetch(request.to_url())
def _make_verification_request(self, token, secret, verifier, params): """Makes a verification OAuth request.""" token = oauth.OAuthToken(token, secret) request = oauth.OAuthRequest.from_consumer_and_token( self._consumer, token=token, verifier=verifier, http_url=self._config['access_token_url'], ) request.sign_request( self._signature_method, self._consumer, token, ) return urlfetch.fetch(request.to_url())