Я успешно получил ключевой токен для вышеуказанной аутентификации oauth от поставщика Google через их api.Получить информацию о пользователе от token C#
давайте рассмотрим «доступ-маркер» является XXXII-ххххх-ххх-ххххх-ххххх, который имеет объем https://www.googleapis.com/auth/userinfo.profile
теперь, когда я попал в браузер с маркером доступа для извлечения информации значений пользовательских имеет
https://www.googleapis.com/oauth2/v1/userinfo?access_token=xxxii-xxxxx-xxx-xxxxx-xxxxx;
я получаю ответы, как
{
"id": "XXXXXXXXXXXXXX",
"name": "XXXXXXXXXXXXXXXX",
"given_name": "XXXXXXXXXXX",
"family_name": "X",
"picture": "XXXXXXXXXX/photo.jpg",
"locale": "en"
}
Моя проблема когда я разобрать выше запрос беспересадочный тьфу код я не получаю ответы, как я получил через браузер
код, который я использовал
String userInfo = "https://www.googleapis.com/oauth2/v1/userinfo?access_token="+token;
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(userInfo);
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
sr.Close();
JObject jsonResp = JObject.Parse(userInfo);
string info = "";
info += "<h3>" + jsonResp.Root["name"] + "</h3>";
info += "<img src='" + jsonResp.Root["picture"] + "' width='120'/><br/>";
info += "<br/>ID : " + jsonResp.Root["id"];
info += "<br/>Email : " + jsonResp.Root["email"];
Response.Write(info);
в ответ я получаю пустую ссылку.
и ошибка я получил в строке
JObject jsonResp = JObject.Parse(userInfo);
в
Неожиданный символ встречается при анализе значения: ч. Строка 1, позиция 1.
Стек след:
на Newtonsoft.Json.JsonTextReader.ParseValue (Char currentChar) в Newtonsoft.Json.JsonTextReader.ReadInternal() в Newtonsoft.Json. JsonTextReader.Read() at Newtonsoft.Json.Linq.JObject.Load (читатель JsonReader) at Newtonsoft.Json.Linq.JObject.Parse (String json) at _Default.getresponse (String token) в d: \ Oauth \ WebSite3 \ Default.aspx.cs: строка 99
Жду ваши ценные предложения и комментарии
Вы разборе url 'userInfo', а не ответ' sr'. – Caramiriel
@Caramiriel я получаю nul-ответ от sr – GowthamanSS
Не могли бы вы проверить 'HttpWebResponse resp' и добавить свои выводы к вопросу? Возможно, он возвращает статус HTTP 404 или 500. – Caramiriel