다음 코드를 사용하여 Graph API를 사용하여 Facebook에 사진을 업로드하려고합니다. 나는 "나쁜 요청"을 계속 받고 있지만 확실하지는 않습니다. 동일한 매개 변수를 사용하여 컬을 사용하여 사진을 업로드 할 수 있습니다. Java를 HttpClient와 함께 사용하고 있습니다.HttpClient를 사용하여 Facebook에 사진 업로드
PostMethod filePost = new PostMethod('https://graph.facebook.com/me/photos');
filePost.setParameter('access_token', 'my-access-token')
filePost.setParameter('message', 'test image')
filePost.getParams().setBooleanParameter(HttpMethodParams.USE_EXPECT_CONTINUE, false);
try {
println("Uploading " + file.getName() + " to 'https://graph.facebook.com/me/photos'");
Part[] parts = [new FilePart('source', file.getName(), file)]
filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
HttpClient client = new HttpClient();
client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
int status = client.executeMethod(filePost);
if (status == HttpStatus.SC_OK) {
println(
"Upload complete, response=" + filePost.getResponseBodyAsString()
);
} else {
println(
"Upload failed, response=" + HttpStatus.getStatusText(status)
);
}
} catch (Exception ex) {
println("ERROR: " + ex.getClass().getName() + " " + ex.getMessage());
ex.printStackTrace();
} finally {
filePost.releaseConnection();
}
업데이트 :이 외에도. 나는 응답에 대한 좀 더 많은 정보를 얻었고 이것을 얻고있다 :
{ "error": { "type": "OAuthException", "message": "현재 액세스 토큰은 현재 사용자} "}
하지만 페이스 북이 권한 부여 프로세스 후에 나에게 제공하는 액세스 토큰을 사용하고있는 것처럼 보이지 않습니다.
컬 코드를 사용 :
curl -F 'access_token=my-access-token' -F '[email protected]/path/to/image.jpg' -F 'message=Some caption' https://graph.facebook.com/me/photos
당신이 당신의 작업 컬 코드도 추가 할 수 방법의 안드로이드 버전? –
포스트의 하단에 추가 – Gregg