Google+ API plus.me - PullRequest
       30

Google+ API plus.me

4 голосов
/ 21 сентября 2011

Вопрос: Как использовать people.get с параметром "me"?

Я знаю, как получить объект json при использовании https://www.googleapis.com/plus/v1/people/{id}?key={key}

, но какие параметры я должен включитькогда я использую «я» в качестве идентификатора?

(я использую response_type=code в аутентификации)

Редактировать: (исправлено)

Я естьиспользуя ASP.NET, и я нашел эту ссылку , но запрос POST для маркера доступа json выдает ошибку.Отправка запроса работает, но, когда я использую GetResponse(), я получаю ошибку (400).А также я не уверен, правильно ли я использую uri: https://accounts.google.com/o/oauth2/token


Редактировать 2:

Проблема решена.Запрос был плохим, потому что я использовал UTF32Encoding вместо UTF8Encoding при преобразовании строки параметра в byte [] перед записью в Stream.С UTF8Encoding работает хорошо.:)

Код, который я написал после этого вопроса:

HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(uri);
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.Method = "POST";
UTF8Encoding utfenc = new UTF8Encoding();
byte[] bytes = utfenc.GetBytes(parameters);
Stream os = null;
try // send the post
{
    webRequest.ContentLength = bytes.Length; // Count bytes to send
    os = webRequest.GetRequestStream();
    os.Write(bytes, 0, bytes.Length);        // Send it
}

// error handling...
try // get the response
{
    HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
    if (webResponse == null)
    { return null; }
    StreamReader sr = new StreamReader(webResponse.GetResponseStream());
    return sr.ReadToEnd().Trim();
}
// error handling...

он вызвал это с параметрами отсюда , а возвращаемая строка (json) содержит мой access_token.

Ответы [ 4 ]

2 голосов
/ 22 ноября 2011

Мы разработали клиентскую библиотеку .NET для Google+ API. Эта библиотека позволяет очень легко использовать API Google+ из любых языков программирования .NET, таких как C #, VB.NET или ASP.NET

.

Подробнее о библиотеке .NET для Google+ можно узнать здесь: http://www.googleplustips.com/resources/3332-NET-Library-Google-APIs-released.aspx

Текущая версия поддерживает все API-интерфейсы Google+ версии 1 и работает с API-ключом. Для вызова любых API Google требуется только один вызов метода.

1 голос
/ 17 декабря 2011

GetActivity и ListComments получают все данные, или у него есть какой-то метод (использующий nextPageToken), чтобы получить все элементы?

Каждый вызов метода возвращает набор результатов постранично.Возвращенный объект имеет свойство NextPageToken, которое можно передать при следующем вызове для получения следующей страницы набора результатов.

1 голос
/ 05 октября 2011

Я отправил запрос POST (информация здесь ), чтобы получить Oauth2 access_token, и использовал:

https://www.googleapis.com/plus/v1/people/me?key={key}&access_token={token}

1 голос
/ 21 сентября 2011

Вы можете использовать me ID, если вы получаете доступ к приложению с помощью токена доступа аутентифицированного пользователя (OAuth).Цитата из документации G + API :

Если используется значение userId "me", этот метод требует аутентификации с использованием токена, которому предоставлена ​​область OAuth https://www.googleapis.com/auth/plus.me. Подробнее о с использованием OAuth .

Пример: при использовании клиента PHP API перед выдачей, например,

$plus_api = new apiPlusService($client); // $client is the apiClient() object
$plus_api->activities->listActivities('me', ...);

, необходимо установить доступСначала токен аутентифицированного пользователя, выполнив:

$client->setAccessToken($access_token);

С этим набором идентификатор me будет распознан без проблем.

...