有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Twitter4J只与我进行身份验证

我一直在使用Twitter4J构建一个项目,问题是不管我在哪里运行这个代码,它总是使用我的Twitter帐户进行身份验证,最糟糕的是:它不进行身份验证。当我打开脚本时,它已经通过我的帐户验证,而不要求我接受或不接受。这是我正在使用的代码:

ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)
    .setOAuthConsumerKey("********")
    .setOAuthConsumerSecret("****************************************")
    .setOAuthAccessToken("***********************************************")
    .setOAuthAccessTokenSecret("***************************************");
TwitterFactory tf = new TwitterFactory(cb.build());
Twitter twitter = tf.getInstance();

我做错了什么,如何纠正


共 (2) 个答案

  1. # 1 楼答案

    您是仅使用此代码进行身份验证还是进行其他api调用

    如果需要对新用户进行身份验证,则无需设置访问令牌和令牌密钥。它必须只使用消费者的密钥(然后准备新的回调url、重定向用户等)

    当您为指定用户(连接到此accestoken)从twitter api请求其他数据时,将使用访问令牌

    另外,请注意,twitter身份验证会为您提供当前登录用户的凭据。我指的是已经登录twitter的用户。而且它只会问他一次——当他第一次尝试验证时,第二次它会重用它

  2. # 2 楼答案

    the problem is that don't matter where I try to run this code it always use my Twitter account to authenticate

    您必须使用oAuth才能从twitter获得身份验证。。在oAuth中,如果你为账户A注册应用程序,那么你将无法使用账户B通过该应用程序登录。。您应该请求Twitter API团队为您的应用程序提供对xAuth的访问。。使用xAuth,您可以使用任何用户名/密码使用自己的应用程序登录twitter

    如果你有任何问题,请告诉我

    -卡马尔兹