我有一个Java应用程序,我尝试通过泽西的图形API将照片上传到Facebook。 到目前为止,一切正常,泽西我可以发布消息等。
我搜索了几个小时,找到了一个如何做的例子。 我找到的最好的教程就是这个:
http://neopatel.blogspot.de/2011/04/jersey-posting-multipart-data.html
我唯一知道的是我必须使用multipart / formdata。
有没有人有例子或知道必须这样做?
答案 0 :(得分:2)
您是否尝试使用jersey-multipart套餐?
您为文件创建FormDataMultiPart
FileDataBodyPart
,为邮件和access_token创建FormDataBodyPart
..
答案 1 :(得分:2)
这是我的解决方案。
String url = "https://graph.facebook.com/me/photos";
File file = new File("path");
ClientConfig cc = new DefaultClientConfig();
cc.getClasses().add(MultiPartWriter.class);
Client client = Client.create(cc);
WebResource webResource = client.resource(url);
FormDataMultiPart fdmp = new FormDataMultiPart();
fdmp.bodyPart(new FileDataBodyPart("source", file, MediaType.APPLICATION_OCTET_STREAM_TYPE));
fdmp.bodyPart(new FormDataBodyPart("message", "YAY I did it!"));
fdmp.bodyPart(new FormDataBodyPart("access_token", accessToken));
ClientResponse response = webResource.type(MediaType.MULTIPART_FORM_DATA_TYPE).post(ClientResponse.class, fdmp);
String string = response.getEntity(String.class);