質問

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つのこと:

  1. あなたは持っていますか publish_stream 延長許可 そのユーザーのために?
  2. ユーザーは実際にすでに投稿を気に入っていますか?
  3. 中央にプロキシサーバーがあり、HTTP削除要求がドロップされている可能性がありますか? Get Requestを作成してパラメーターを追加して、削除要求を「偽造」してみてください。 &method=delete あなたが行っているリクエストに対して - Facebook APIはこれをGETリクエストで到着しても「削除」として扱います

400エラーのボディに戻ってくるより良いエラーメッセージがあるはずです - あなたがおそらくもっと助けることができると提供するなら

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top