以下是其网站上的部分: https://dev.twitter.com/docs/embedded-timelines
在旧版本的API中,可以动态切换窗口小部件中的用户名,但新API会强制您将完整窗口小部件存储在其服务器上,并通过窗口小部件ID进行访问。有什么方法吗?
答案 0 :(得分:4)
Nope :(不幸的是,Twitter将所有小部件(嵌入式时间轴都是小部件)与id
匹配。因此,它会识别您的时间轴小部件id
并显示您的时间轴,因此您不能简单地改变它查询的Twitter句柄。
以下是您的选择:
为获得最大的灵活性,第二种选择可能是您的最佳选择。如果您使用的是PHP或.NET,我可以帮助您,所以如果您是(以及哪一个),请告诉我。
答案 1 :(得分:2)
这适用于使用新Twitter API 1.1的时间轴
1)在http://twitter4j.org/en/下载twitter4j-core-3.0.3.jar 2)尝试使用此代码:
private static final String TWITTER_CONSUMER_KEY = "xxxxxxxxxxxxxxxxxx";
private static final String TWITTER_SECRET_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
private static final String TWITTER_ACCESS_TOKEN = "xxxxxxxxxxxxxxxxxxxxxxx";
private static final String TWITTER_ACCESS_TOKEN_SECRET = "xxxxxxxxxxxxxxxxxxxxxxxxx";
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)
.setOAuthConsumerKey(TWITTER_CONSUMER_KEY)
.setOAuthConsumerSecret(TWITTER_SECRET_KEY)
.setOAuthAccessToken(TWITTER_ACCESS_TOKEN)
.setOAuthAccessTokenSecret(TWITTER_ACCESS_TOKEN_SECRET);
TwitterFactory tf = new TwitterFactory(cb.build());
Twitter twitter = tf.getInstance();
try {
Query query = new Query("MrEdPanama");
QueryResult result;
do {
result = twitter.search(query);
List<Status> tweets = result.getTweets();
for (Status tweet : tweets) {
System.out.println("@" + tweet.getUser().getScreenName() + " - " + tweet.getText());
}
} while ((query = result.nextQuery()) != null);
System.exit(0);
} catch (TwitterException te) {
te.printStackTrace();
System.out.println("Failed to search tweets: " + te.getMessage());
System.exit(-1);
}
答案 2 :(得分:1)
我意识到这个问题是在几个月前被问到的,但实际上可以通过在您的网址中添加“data-”标记来轻松实现。
检查Twitter页面以了解嵌入式时间轴的自定义: https://dev.twitter.com/docs/embedded-timelines#customization
答案 3 :(得分:0)
我最终也采用了这种方法。这个例子非常适合工作并学习如何使用scala:http://bcomposes.wordpress.com/2013/02/09/using-twitter4j-with-scala-to-access-streaming-tweets/
基本上,通过创建twitter oauth应用程序并使用twitter4j,我们创建了一个客户端并使用javascript对其进行样式设置。我们使用正则表达式和javascript来制作链接和用户名超链接。