Как войти в Instagram из кода программной части?

Мне нужно показать изображения определенного пользователя Instagram на моей веб-странице.

Как указано в документации API Instagram, мне нужно пройти аутентификацию, чтобы иметь возможность «просматривать» канал пользователя.

"Аутентификация требуется только в тех случаях, когда ваше приложение отправляет запросы от имени пользователя (комментирование, отметка "Нравится", просмотр ленты пользователя и т. д.)". (http://instagram.com/developer/authentication/)

Итак, как указано в документации API, я отправляю запрос на этот URL:

https://instagram.com/oauth/authorize/?display=touch&client_id=[ClientID]
&redirect_uri=[callbackuri]/&response_type=token 

для перенаправления на другой URL-адрес: http://your_redirect_uri?code=CODE чтобы иметь возможность получить access_token (CODE), чтобы иметь возможность вызывать с его помощью сервисы RESTful Instagram.

Проблема в том, что если посетитель моего веб-сайта не авторизовался в Instagram, он будет перенаправлен на страницу входа для аутентификации, и только после этого я смогу получить токен доступа.

Мой вопрос: как я могу обойти эту страницу входа, автоматически войдя в учетную запись instagram моего приложения из кода (или, возможно, с помощью javascript!)?

Кстати, я использую C# и Instasharp(http://instasharp.org/).

Есть идеи?

Заранее спасибо!


person LonelyDeveloper    schedule 28.06.2013    source источник


Ответы (1)


сначала создайте приложение разработчика в Instagram и получите ConsumerKey & ConsumerSecret и установите путь обратного вызова URL-адрес какой-то ссылки http://localhost:3104/Instagram.aspx

private void Authentication()
    {
        string rest = string.Empty;
        GlobusInstagramLib.Authentication.ConfigurationIns config = new GlobusInstagramLib.Authentication.ConfigurationIns("https://instagram.com/oauth/authorize/", ConfigurationManager.AppSettings["consumerKey"], ConfigurationManager.AppSettings["consumerSecret"], ConfigurationManager.AppSettings["callbackurl"], "https://api.instagram.com/oauth/access_token", "https://api.instagram.com/v1/", "");
        oAuthInstagram _api = oAuthInstagram.GetInstance(config);
        rest = _api.AuthGetUrl("likes+comments+basic+relationships");
        Response.Redirect(rest);
    }

Автоматический редирект на этой странице и вызов этого кода

   public void Instagram()
   {
    string code = (String)Request.QueryString["code"];
    oAuthInstagram objInsta = new oAuthInstagram();
    GlobusInstagramLib.Authentication.ConfigurationIns configi = new GlobusInstagramLib.Authentication.ConfigurationIns("https://api.instagram.com/oauth/authorize/", ConfigurationManager.AppSettings["consumerKey"], ConfigurationManager.AppSettings["consumerSecret"], ConfigurationManager.AppSettings["callbackurl"], "http://api.instagram.com/oauth/access_token", "https://api.instagram.com/v1/", "");
    oAuthInstagram _api = new oAuthInstagram();
    _api = oAuthInstagram.GetInstance(configi);
    AccessToken access = new AccessToken();
    access = _api.AuthGetAccessToken(code);
    string accessToken = access.access_token;
    string id =access.user.id;

   }

вы получите токен и идентификатор пользователя

person Community    schedule 17.03.2015