2012-10-09 5 views
0

나는 OAuth2가 (https://developers.google.com/api-client-library/python/guide/aaa_oauth을 통해) 작동하는 방법을 알아 냈고 Google Apps 프로비저닝 목적으로 사용하려는 OAuth2Credentials 객체 (객체 credentials)를 사용하고 있습니다. 여기에 사이트를 사용하고 있지만, GDATA API는)파이썬에서 Google API gData 클라이언트와 함께 OAuth2Credentials를 사용하는 방법은 무엇입니까?

내가하려고하면 : 나는 아무것도 할 때

client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain') 
client = credentials.authorize(client) 

내가

TypeError: new_request() got an unexpected keyword argument 'http_request' 

를 얻을 수

내가하려고하면

client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain', auth_token=credentials) 

또는

client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain', auth_token=credentials.access_token) 

I 얻을 관련 객체 (자격 증명 또는 credentials.access_token가) 어떤 속성 'modify_request'

어떤 아이디어가없는 AttributeError 내가 무엇을 할 수 시험?

답변

0

Google의 고객 코드에 대해 확실하지 않지만 항상 (뻔뻔한 플러그) sanction을 시도해 볼 수 있습니다. 오래 전 Github 및 PyPI에서 사용할 수있는 OAuth 2.0 클라이언트입니다.

그나 : 무려 55 LOC 인

  • , 그것은 엄청난 쉽게 grok 수하는 입니다. 그것은 구글을 ​​포함한 8 개 개의 다른 공급자()
테스트되었습니다
  • ) 뭔가 잘못되면, 당신은 ... 당신 무슨 일이 일어나고 이해할 수 있어야 여기에 질문을 할 필요가 없습니다

    단점 :

    • 은 분명히
    • 가정 (따라서 제공)하지 않는 현재 코드의 리팩토링을 필요로 지속성 구현
    • 합니까 받는 사람 전달하기 전에
  • 0

    answer 객체 당신이의 OAuth2Credentials을 monkeypatch해야 말한다 (당신이 취급하고있는 OAuth는 2.0 노출 된 API의 기본적인 이해가 필요) API 구현을 제공하지 SitesClient(auth_token=credentials). 그것은 당신에게 원숭이 패치를하는 방법을 보여주는 답변을 가지고 있습니다.

    +0

    본 적이 있지만, 더러워 보일뿐 아니라 코드가 없습니다. 그래서 나는 그것을 할 수있는 적절한 방법이 있는지 알 것입니다. – askvictor