2012-05-11 130 views
1

我對Google API授權以及需要哪種類型感到困惑。Google API訪問授權 - 需要指導

我想建立一個python應用程序,可以把事件放在我的谷歌日曆上。請注意,我希望我的日曆上只有我的日曆。這將在服務器上作爲django appllcation的後端運行。我根本沒有試圖訪問任何其他用戶的數據或日曆。

示例:用戶放入服務請求。我告訴用戶感謝這個請求,然後我在日曆上放了一個日曆事件。

我試過Web應用程序的Calendar API OAuth模型客戶端ID,它似乎在請求訪問請求用戶數據的權限。正確?

由於我使用用戶名和密碼登錄到我的Google帳戶,並且可以訪問我的個人資料和日曆,我的應用程序可以在我的帳戶上執行相同的操作嗎?

如何做到這一點?我需要什麼Google API授權?任何簡單的例子?

回答

0

對Google API授權的推薦方法是使用OAuth 2. Google以各種語言(如Python)爲OAuth 2提供獨立庫,以及提供更全面的客戶端庫(請參閱Python library)將OAuth 2與Google API(如Calendar API)結合使用。

使用用戶名和密碼對通常在Google API上下文中稱爲ClientLogin。這種做法已被棄用,並且強烈不鼓勵

因此,有simple instructions將Calendar API v3與Google Developers網站上的Python客戶端庫結合使用。但是,這些指令是針對在命令行上運行的應用程序而設計的,而不是在Web服務器上運行的應用程序,因爲這在概念上和編程上都很容易掌握。我建議先嚐試一下這個示例,即使它沒有按照你想要的來做。

我知道App Engine樣本上沒有OAuth 2,但客戶端庫樣本中包含example using the Google+ APIs

授權用戶的這個示例的關鍵部分在使用Google+ API的應用程序與Calendar API之間幾乎相同。最大的區別將在訪問代表用戶(範圍)的應用程序的請求,這將是這樣的:

https://www.googleapis.com/auth/calendar 

代替:

https://www.googleapis.com/auth/plus.me 

,當然實際通話到API,這在Calendar API documentation reference中有詳細描述。如果您嘗試了上面鏈接的簡單Calendar API示例,則應該能夠將您在那裏學到的內容與Google+示例中的OAuth 2設置說明一起使用,以便按照您的要求進行操作。