AndroidのFacebookでユーザーが気に入った投稿とは異なります
-
27-10-2019 - |
質問
Facebook Androidアプリケーションを使用して書きました RESTFB .
投稿とは異なり、FacebookグラフAPIは、http deleteをに送信するように言います https://graph.facebook.com/postid/likesアクセストークン付き
サンプルコードはです
String postURL = FacebookAppConstants.GRAPH_API_ACCESS+"/"+postID+
"/likes&access_token="+FacebookAppConstants.accessToken;
Log.out(logFlag, logTag, "########Delete URL = "+postURL);
HttpDelete dislikePost = new HttpDelete(postURL);
Log.out(logFlag,logTag,"####Method : "+dislikePost.getMethod());
try {
HttpResponse response = httpClient.execute(dislikePost);
Log.out(logFlag, logTag,response.getStatusLine().toString());
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
実行中、私はサーバーから悪い要求400を取得しています。
HTTP/1.1 400 Bad Request
<HTML><HEAD>
D/SMF ( 2546): <TITLE>400 Bad Request</TITLE>
D/SMF ( 2546): </HEAD><BODY>
D/SMF ( 2546): <H1>Method Not Implemented</H1>
D/SMF ( 2546): Invalid method in request<P>
D/SMF ( 2546): </BODY></HTML>
解決策は何ですか
どんな助けも
ありがとう。
解決 2
String postURL = FacebookAppConstants.GRAPH_API_ACCESS+"/"+postID+
"/likes&access_token="+FacebookAppConstants.accessToken;
Log.out(logFlag, logTag, "########Delete URL = "+postURL);
HttpGet dislikePost = new HttpGet(postURL+"&method=DELETE");
try {
HttpResponse response = httpClient.execute(dislikePost);
HttpEntity entity = response.getEntity();
String body = EntityUtils.toString(entity);
Log.out(logFlag, logTag, "Body : "+body);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
他のヒント
チェックする3つのこと:
- あなたは持っていますか
publish_stream
延長許可 そのユーザーのために? - ユーザーは実際にすでに投稿を気に入っていますか?
- 中央にプロキシサーバーがあり、HTTP削除要求がドロップされている可能性がありますか? Get Requestを作成してパラメーターを追加して、削除要求を「偽造」してみてください。
&method=delete
あなたが行っているリクエストに対して - Facebook APIはこれをGETリクエストで到着しても「削除」として扱います
400エラーのボディに戻ってくるより良いエラーメッセージがあるはずです - あなたがおそらくもっと助けることができると提供するなら
所属していません StackOverflow