Автоматизация входа в Твиттер в приложении Desktop, написанном на Java - PullRequest
2 голосов
/ 19 июля 2011

Я создаю настольный Twitter-клиент на Java с использованием библиотеки twitter4j. У меня есть ключ и секрет API моего приложения. Теперь, после получения токена запроса, я получаю URL-адрес авторизации, который пользователь должен открыть в веб-браузере, войти в свою учетную запись, разрешить доступ к приложению и получить пин-код доступа. После того, как он введет этот пин-код в приложение, приложение получит постоянный доступ к учетной записи пользователя. Есть ли способ в Java, чтобы автоматизировать процесс входа в систему / получения пин-кода?

Чего я хочу добиться, так это того, чтобы пользователь вводил свое имя пользователя и пароль в самом приложении, а приложение должно автоматически получать пин-код доступа. Я не хочу никакого вмешательства веб-браузера. Как мне этого добиться? Пожалуйста, помогите!

Ответы [ 4 ]

0 голосов
/ 19 июля 2011

Думаю, я бы попробовал интегрированный браузерный подход. Запрос http POST мне кажется сложным, и я раньше не занимался веб-кодированием. Примеры на сайте DJ Project выглядят многообещающе. Спасибо!

0 голосов
/ 19 июля 2011

Не вдаваясь в подробности реализации Twitter, я могу сказать, что он использует так называемую аутентификацию на основе форм, то есть браузер отправляет учетные данные пользователя на сервер в виде запроса HTTP POST. Вы должны узнать, как это работает, и сделать то же самое. Вы можете использовать плагин Firefox «live http заголовки» и / или wireshark для получения информации о запросах, отправляемых на сервер.

0 голосов
/ 19 июля 2011

Google предоставил метод аутентификации под названием ClientLogin

, вы должны увидеть, если Twitter API предоставляет аналогичный метод oauth.этот метод подходит для настольных приложений.Ищите методы аутентификации в Twitter API по аналогии с Google ClientLogin.если его нет, попробуйте использовать встроенный Swing-браузер, такой как DJ Project , и выполните авторизацию в Twitter во встроенном браузере DJNative Swing.

0 голосов
/ 19 июля 2011

хм, я думаю, что это невозможно :( может быть, с некоторыми уродливыми обходными путями, такими как открыть браузер внутри Java .. что-то в этом роде ...

но без браузера я думаю, что это невозможно.

...