spring social Twitter APIを使って元のJSONデータつぶやきを取得するには? 「Tweet」クラスがありますが、Twitter から JSON 形式で返された元のツイート コンテンツを取得できる関数が見つかりませんでした。
質問する
329 次
1 に答える
1
生のJSONデータが必要な理由はわかりませんが、可能であり、取得する方法は次のとおりです。
このガイドに従って、Spring Social Twitter をセットアップします。
Twitter から生の JSON データが必要な場合は、RestTemplate
から取得した を使用できますTwitterTemplate
。
上記のガイドにこのコントローラーを追加します。
@Controller
@RequestMapping("/jsontweets")
public class JsonTweetsController {
private ConnectionRepository connectionRepository;
private TwitterTemplate twitterTemplate;
@Inject
public JsonTweetsController(Twitter twitter, ConnectionRepository connectionRepository, TwitterTemplate twitterTemplate) {
this.connectionRepository = connectionRepository;
this.twitterTemplate = twitterTemplate;
}
@RequestMapping(method=RequestMethod.GET)
public String helloTwitter(@RequestParam String search, Model model) {
if (connectionRepository.findPrimaryConnection(Twitter.class) == null) {
return "redirect:/connect/twitter";
}
Connection<Twitter> con = connectionRepository.findPrimaryConnection(Twitter.class);
UserProfile userProfile = con.fetchUserProfile();
String username = userProfile.getFirstName() + " " + userProfile.getLastName();
RestTemplate restTemplate = twitterTemplate.getRestTemplate();
//More Query Options @ https://dev.twitter.com/rest/reference/get/search/tweets
String response = restTemplate.getForObject("https://api.twitter.com/1.1/search/tweets.json?q="+search, String.class);
System.out.println("JSON Response From Twitter: "+response);
model.addAttribute("jsonstring", response);
model.addAttribute("username", username);
return "json";
}
}
生のツイートを表示するテンプレートを追加しますjson.html
。
<!DOCTYPE html>
<html>
<head>
<title>JSON Tweets</title>
</head>
<body>
<h3>Hello, <span th:text="${username}">Some User</span>!</h3>
<div th:text="${jsonstring}">JSON Tweets</div>
</body>
</html>
上記のコードの完全なプロジェクトと最新のコミットを確認してください。
于 2016-05-10T21:08:45.293 に答える