5

我在 django 应用程序中使用了谷歌应用引擎。我一直在使用 google 的用户 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> 和用户类的user_idGoogle API不同。

如何在我的应用程序中获取个人资料图片?

4

2 回答 2

3

方法是在这里使用google+ 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": "jbrahy@XxXxXxXx.com",
            "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"
}
于 2014-04-12T19:34:51.260 回答
0

如果你问的是身份证...

user_id()我的GoogleIDxxx8005350796570706xx和我的 Google Plus 个人资料 ID102445631084043565507完全不同

您需要向用户询问他的 G+ 个人资料或通过oAth2.0对他进行身份验证,以获得读取他的个人资料的权限。

此外,如果您有他的电子邮件地址,您可以使用 GAvatar。

于 2014-02-14T12:40:40.483 回答