Exemplo n.º 1
0
    def post(self, url, body, headers=None):
        uri = urlparse.urljoin(self.api_host, url)
        if headers is not None:
            headers.update({"Authorization": "Bearer %s" % self.access_token})
        else:
            headers = {"Authorization": "Bearer %s" % self.access_token}     

        resp, content = httplib2_request(uri, "POST", body=body, headers=headers)
        return self.check_result(uri, resp, content)
Exemplo n.º 2
0
    def post(self, url, body, headers=None):
        uri = urlparse.urljoin(self.api_host, self.api_version)
        uri = urlparse.urljoin(uri, url)

        log.info("posting %s" %url)
        resp, content = httplib2_request(uri, "POST", body=body, headers=headers)
        content_json = self.check_result(uri, resp, content)
        log.info("post to sina return:%s" % content_json)
        return content_json
Exemplo n.º 3
0
    def get(self, url, extra_dict=None):
        uri = urlparse.urljoin(self.api_host, url)
        if extra_dict is None:
            extra_dict = {}
        extra_dict["alt"] = "json"

        if extra_dict:
            qs = urllib.urlencode(extra_dict)
            if "?" in uri:
                uri = "%s&%s" % (uri, qs)
            else:
                uri = "%s?%s" % (uri, qs)
        headers = {"Authorization": "Bearer %s" % self.access_token}     
        log.info('getting %s...' % uri)

        resp, content = httplib2_request(uri, "GET", headers=headers)
        return self.check_result(uri, resp, content)
Exemplo n.º 4
0
    def get_access_token(self, authorization_code):
        qs = {
            "client_id": self.apikey,
            "client_secret": self.apikey_secret,
            "redirect_uri": self.redirect_uri,
            "grant_type": "authorization_code",
            "code": authorization_code,
        }
        qs = urllib.urlencode(qs)
        resp, content = httplib2_request(self.access_token_uri, "POST", body=qs)
        excp = OAuthLoginError(msg='get_access_token, status=%s,reason=%s,content=%s' \
                %(resp.status, resp.reason, content))
        if resp.status != 200:
            raise excp

        jdata = json_decode(content) if content else None
        return jdata
Exemplo n.º 5
0
    def refresh_tokens(self):
        qs = {
            "grant_type": "refresh_token",
            "refresh_token": self.refresh_token,
            "client_id": self.apikey,
            "client_secret": self.apikey_secret,
            "redirect_uri": self.redirect_uri,
        }
        resp, content = httplib2_request(self.access_token_uri, "POST", 
            body=urllib.urlencode(qs))
        excp = OAuthLoginError(self.user_alias.user_id, self.provider, 
                'refresh_tokens, status=%s,reason=%s,content=%s' \
                %(resp.status, resp.reason, content))
        if resp.status != 200:
            raise excp

        jdata = json_decode(content) if content else None
        return jdata
Exemplo n.º 6
0
    def get(self, url, extra_dict=None):
        uri = urlparse.urljoin(self.api_host, self.api_version)
        uri = urlparse.urljoin(uri, url)
        if extra_dict is None:
            extra_dict = {}
        if not "access_token" in extra_dict:
            extra_dict["access_token"] = self.access_token
        if not "source" in extra_dict:
            extra_dict["source"] = self.apikey

        if extra_dict:
            qs = urllib.urlencode(extra_dict)
            if "?" in uri:
                uri = "%s&%s" % (uri, qs)
            else:
                uri = "%s?%s" % (uri, qs)
        log.info('getting %s...' % uri)

        resp, content = httplib2_request(uri, "GET")
        content_json = self.check_result(uri, resp, content)
        return content_json