[java][Facebook] Facebookアプリからファイルをアップロードする
Facebookアプリ(ゲーム)から画像を上げられると楽しくなるよね。ということで作りました。
Javaで作っているのでFacebookとの連携はRestFBを使ってます。
Controllerクラス
@RequestMapping(value = "/photo", method = RequestMethod.POST)
public @ResponseBody Object post(
@RequestParam("signed_request") String signedRequestParam,
@RequestParam("test") String test,
@RequestParam("wallPhoto") MultipartFile multipartFile)throws Exception{
SignedRequestInfo signedRequestInfo = facebookService.getSignedRequestInfo(signedRequestParam);
FacebookClient facebookClient = new DefaultFacebookClient(signedRequestInfo.getOauthToken());
Parameter params = Parameter.with("name", test);
InputStream data = multipartFile.getInputStream();
BinaryAttachment binaryAttachment = BinaryAttachment.with("animal-land", data);
String publish = facebookClient.publish("/me/photos", String.class, binaryAttachment, params);
return publish;
}
<form method="post" enctype="multipart/form-data" action="/facebook-sample/server/photo"> <input type="file" id="wallPhoto" name="wallPhoto"><br> <input type="text" id="test" name="test" value="testtest"> <input type="hidden" name="signed_request" value="${signedRequestParam}"> <input type="submit" value="upload"> </form>
ソースはこちら