Авторизация LinkedIn в десктопном приложении

Рейтинг: 1Ответов: 2Опубликовано: 20.04.2015

Возник вопрос получить информацию о пользователе, который есть в в сети LinkedIn. Для веб-приложений я делал такое с помощью библиотек, проблем не возникало. А вот как сделать такое для десктопного приложения, сделанного на C# ? Суть в том, что есть компонент WebBrowser на форме, в котором должна отобразиться форма для логирования в LinkedIn. После успешного логирования получаются данные пользователя, ник, почта, и выводятся, например, в месседж бокс. Подскажите, как такое реализовать, было б очень хорошо, если с рабочими примерами.
Пишу код на Windows 7, Visual Studio 2012.

Ответы

▲ 2

Ну смотрите. Вот здесь:

OAuthToken requestToken = oauthOperations.FetchRequestToken("http://my-callback-url/", null);

вместо http://my-callback-url/ указываете адрес сайта, на который OAuth будет присылать токен. Адрес зарегистрировать можете с помощью:

string LoopbackCallback = "http://localhost:{0}/{1}/authorize/";
string url = string.Format(LoopbackCallback, port, "mysite");
var webserver = new HttpListener();
webserver.Prefixes.Add(url);

Вместо:

Response.Redirect(authorizeUrl);

Пишите:

Process.Start(authorizeUrl);
url = HandleRequest(webserver.GetContext());

Код функции HandleRequest тут: http://pastebin.com/yxB2JsQH

▲ 1

LinkedId использует RESTful формат запросов. Вот ссылка на их документацию: https://developer.linkedin.com/docs/share-on-linkedin

Это из stackoverflow: https://stackoverflow.com/questions/6278603/linkedin-api-in-asp-net

Вот еще интересная вещь: http://www.springframework.net/social-linkedin/

Короче WebRequest/WebResponse в зубы и вперед.