2014-02-14 54 views
5

我得使用谷歌應用程序引擎與Django的應用程序。我一直在使用谷歌的用戶api登錄我的網站,並從中獲取當前用戶的電子郵件地址,但我必須獲取在Google Plus帳戶上登錄的個人資料圖片。從谷歌加

我使用得到他們的個人資料圖片,

<img src="https://plus.google.com/s2/photos/profile/<user_id>?sz=100" width="100" height="100"> 
在谷歌API

用戶級別還提供user_id,但我無法使用該user_id獲取他們的個人資料圖片。

<user_id>和用戶類別Google API的user_id是不同的。

如何在我的應用程序中獲取配置文件圖片?

回答

0

如果你問的關於IDS ...

根據user_id()我GoogleID是xxx8005350796570706xx和我的谷歌加配置文件ID爲102445631084043565507這是完全不同的

您需要向用戶詢問他的G +個人資料或通過oAth2.0認證他以獲取讀取他的個人資料的權限。

此外,如果你有他的電子郵件地址,你可以使用GAvatar。

+0

如何使用他們的電子郵件地址獲得GAvatar? –

+0

我現在不用關於django中谷歌應用程序引擎的GAvatar。 –

+0

@jayu http://stackoverflow.com/questions/4509660/stackoverflow-userpic-generation-identicons/4509708#4509708 –

3

做到這一點的方法是使用谷歌的API +這裏:https://developers.google.com/apis-explorer/#p/plus/v1/plus.people.get?userId=me&_h=2&

這是拉圖像已經過驗證的用戶的要求。

GET https://www.googleapis.com/plus/v1/people/me?key={YOUR_API_KEY} 

你會得到一個像這樣的json響應,這很容易解析,並拉出image-> url值來顯示。

{ 
    "kind": "plus#person", 
    "etag": "\"XxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXx\"", 
    "gender": "male", 
    "emails": [ 
     { 
      "value": "[email protected]", 
      "type": "account" 
     } 
    ], 
    "objectType": "person", 
    "id": "XxXxXxXxXxXxXxXxXxXxXxXx", 
    "displayName": "John Brahy", 
    "name": { 
     "familyName": "Brahy", 
     "givenName": "John" 
    }, 
    "url": "https://plus.google.com/XxXxXxXxXxXxXxXxXxXxXxXx", 
    "image": { 
     "url": "https://lh3.googleusercontent.com/XxXxXxXx/XxXxXxXx/XxXxXxXx/XxXxXxXx/photo.jpg?sz=50" 
    }, 
    "isPlusUser": true, 
    "language": "en", 
    "circledByCount": 2, 
    "verified": false, 
    "cover": { 
     "layout": "banner", 
     "coverPhoto": { 
      "url": "https://lh5.googleusercontent.com/XxXxXxXx/XxXxXxXx/XxXxXxXx/XxXxXxXx/XxXxXxXx/Green%2BGrass.jpg", 
      "height": 240, 
      "width": 420 
     }, 
     "coverInfo": { 
      "topImageOffset": 0, 
      "leftImageOffset": 0 
     } 
    }, 
    "domain": "XxXxXxXx-x.com" 
}