Авторизация в приложении через Вконтакте VK на C#
Данная публикация написана как простая инструкция для себя, на память, чтобы не забыть.
Предложенный вариант использовался для авторизации через токен VK в серверном приложении.
Для начала создадим метод отправки HTTP запроса и получения ответа от сервера:
/// <summary>
/// Отправляем запрос на получение
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
private static string GetRequest(string host, string req)
{
string str = "";
var Vk = new HttpClient();
Vk.DefaultRequestHeaders.Add("Connection", "close");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(req);
request.UseDefaultCredentials = true;
request.PreAuthenticate = true;
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "GET";
request.Host = host;
request.UserAgent = "RM";
request.ContentType = "application/x-www-form-urlencoded";
request.KeepAlive = false;
using (HttpWebResponse responsevk = (HttpWebResponse)request.GetResponse())
using (var stream = responsevk.GetResponseStream())
using (var streamReader = new StreamReader(stream, Encoding.UTF8))
{
str = streamReader.ReadToEnd();
}
return str;
}