Я опоздал на 3 года, но нашел этот пост, когда искал решение почти идентичной проблемы. Однако я стараюсь избегать использования API Google, поэтому решил опубликовать собственное решение на тот случай, если кто-нибудь захочет найти способ сделать это без Google API. Я использую RestSharp для обработки HTTP-запросов, но в этом нет необходимости.
//craft the request
string requestUrl = "https://www.googleapis.com/plus/v1/people/me?access_token=" + AccessToken;
RestClient rc = new RestClient();
RestRequest request = new RestRequest(requestUrl, Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("x-li-format", "json");
request.RequestFormat = DataFormat.Json;
//send the request, and check the response.
RestResponse restResponse = (RestResponse)rc.Execute(request);
if (!restResponse.ResponseStatus.Equals(ResponseStatus.Completed)) { return null; }
Основное отличие от первоначальной реализации в вопросе не в том, что я использую RestSharp - это незначительно. Основное отличие состоит в том, что я передал access_token в строке запроса вместо ключа.