Twitter4j: Ключ пользователя OAuth / Секрет не установлен - PullRequest
0 голосов
/ 20 февраля 2012

Я только начал использовать Twitter4j и пытаюсь заставить работать мое первое приложение. Я зарегистрировал свое приложение на странице приложений Twitter и ввел информацию об OAuth в файл twitter4j.properties. Однако каждый раз, когда я пытаюсь запустить приложение, я получаю сообщение об ошибке «Ключ клиента OAuth / секрет не задан». Я включил код в это сообщение.

Любая помощь будет принята с благодарностью.

Спасибо заранее, Aonghus

import java.util.logging.Logger;
import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Status;
import twitter4j.Tweet;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.auth.AccessToken;
import twitter4j.auth.RequestToken;


public class test {
    private final Logger logger = Logger.getLogger(test.class.getName());
    public static void main(String[] args) {
        new test().publish();
    }

    private void publish(){

        String message="Twitter application using Java http://www.java-tutorial.ch/architecture/twitter-with-java-tutorial";

        try {
            Twitter twitter = new TwitterFactory().getInstance();
            try {
                RequestToken requestToken = twitter.getOAuthRequestToken();
                AccessToken accessToken = null;
                while (null == accessToken) {
                    logger.fine("Open the following URL and grant access to your account:");
                    logger.fine(requestToken.getAuthorizationURL());
                    try {
                        accessToken = twitter.getOAuthAccessToken(requestToken);
                    } 
                    catch (TwitterException te) {
                        if (401 == te.getStatusCode()) {
                            logger.severe("Unable to get the access token.");
                        } else {
                            te.printStackTrace();
                        }
                    }
                }
                logger.info("Got access token.");
                logger.info("Access token: " + accessToken.getToken());
                logger.info("Access token secret: " + accessToken.getTokenSecret());
            } 
            catch (IllegalStateException ie) {
                // access token is already available, or consumer key/secret is not set.
                if (!twitter.getAuthorization().isEnabled()) {
                    logger.severe("OAuth consumer key/secret is not set.");
                    return;
                }
            }
            Status status = twitter.updateStatus(message);
            logger.info("Successfully updated the status to [" + status.getText() + "].");
        } 
        catch (TwitterException te) {
            te.printStackTrace();
            logger.severe("Failed to get timeline: " + te.getMessage());
        }
    }
}

Ответы [ 3 ]

3 голосов
/ 16 июня 2012

вам нужно создать файл в проекте, который будет выглядеть так

debug=false
oauth.consumerKey=**************
oauth.consumerSecret=************************************
oauth.accessToken=****************************************
oauth.accessTokenSecret=*******************************
0 голосов
/ 23 мая 2012

http://twitter4j.org/en/configuration.html

twitter4j.properties - это один из способов.

0 голосов
/ 21 февраля 2012

Вам необходимо установить ключ / секретный ключ пользователя. Вы должны получить эти ключи у Разработчиков Twitter

...