読者です 読者をやめる 読者になる 読者になる

[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;
}

JSP

<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>

ソースはこちら