2011-09-15 36 views
7

Chỉ một vài phút Google đã xuất bản API của mình cho mạng xã hội Google+API Google+ - nhận ID người dùng bằng e-mail?

Nhưng làm cách nào tôi có thể nhận được ID người dùng dạng số? Hay tôi buộc phải sử dụng oAuth?

Tôi biết nó được viết có trong URL khi bạn truy cập vào trang cá nhân của bạn/nước ngoài, nhưng làm thế nào để làm điều đó programmaticaly với

thông tin:
http://developers.google.com/+/api/latest/people/get
http://developers.google.com/+/api/oauth

+0

API nào bạn đang sử dụng. Tôi đang làm việc trên api java của họ và đã thấy gói plus.model của họ. Không có cách nào chúng tôi có thể nhận được vòng kết nối hoặc người trong vòng kết nối, vì vậy tôi nghĩ rằng chúng tôi không thể có được id của những người này. Bạn có muốn nhận id của bạn bè trong vòng kết nối của bạn hoặc ngẫu nhiên không? –

+0

tất nhiên liên quan, vì vậy id của người dân trong cicrles, vì vậy đây là điều tiếp theo còn thiếu trong phiên bản đầu tiên của API, damn –

+0

bạn đã thử bất kỳ api khác của họ –

Trả lời

5

(Tôi đang sử dụng API Python)

Khi sử dụng OAuth, bạn có thể sử dụng chuỗi 'tôi' thay vì userId, theo cách đó bạn có thể truy xuất nội dung công khai của người dùng được xác thực :

print service.activities().list(userId='me',collection='public').execute() 

Tôi giả sử bạn đang sử dụng API PHP (xem thẻ của bạn), thử đặt 'tôi' thay vì userId.

Edit: Khi lấy hồ sơ người sử dụng chứng thực, bạn có thể nhận được userId từ "id" lĩnh vực (JSON phản ứng lấy từ http://developers.google.com/+/api/):

{ 
    "kind": "plus#person", 
    "id": "118051310819094153327", 
    "displayName": "Chirag Shah", 
    "url": "https://plus.google.com/118051310819094153327", 
    "image": { 
    "url": "https://lh5.googleusercontent.com/-XnZDEoiF09Y/AAAAAAAAAAI/AAAAAAAAYCI/7fow4a2UTMU/photo.jpg" 
    } 
} 
0

Đây là những gì bạn có thể làm trong php

$client->setScopes(array('https://www.googleapis.com/auth/plus.me','https://www.googleapis.com/auth/userinfo.email')); 

    $url = 'https://www.googleapis.com/oauth2/v1/userinfo'; 
    $request = $client->getIo()->authenticatedRequest(new apiHttpRequest($url)); 
    if ($request->getResponseHttpCode() != 200) { 
     throw new apiException("http code: " . $request->getResponseHttpCode() . ", response body: " . $request->getResponseBody()); 
    } 
    $temp = json_decode($request->getResponseBody(), true); 
    print_r($temp); 
Các vấn đề liên quan