0

私は Javascript を使用しています。私のアプリケーションは FB.ui と FB.api を使用して Facebook に公開しています。最近、次の内容のメールを受け取りました。

あなたのアプリ (...) は、キャプションが事前に入力された写真を投稿している可能性があります。その場合は、制限を回避するために、今後数日以内にデフォルトの写真キャプションを削除することをお勧めします。

アプリによって公開されたストーリーがユーザーの声を表すことを望んでいるため、これは Facebook プラットフォーム ポリシーの下では許可されていません。このポリシーの詳細については、 https ://developers.facebook.com/policy/#integration をご覧ください。

私が使用する関数は次のとおりです。非常に多くのテストを行った後、どの関数が問題なのか本当にわかりません。関数upload_fotoに問題があるのではないかと思いますが、よくわかりません.javascript FB.apiを使用して写真をアップロードできない場合はどうすればよいですか? これを解決する方法はありますか?

function postToWall(to_user_id, title1, url_to_picture, link_to_open) {
        var control = document.getElementById("my_silverlight");
        //this will publish a story to the specified user or page (post owner is the user not the page)
        FB.ui({ method: 'feed',
            name: title1,
            display: 'iframe',
            link: link_to_open,
            description: 'Some description',
            caption: 'Some caption',
            picture: url_to_picture,
            type: 'photo',
            to: to_user_id
        }, function (response) {
            if (response && response.post_id) {
                control.content.PageName.update_post("success");
            } else {
                control.content.PageName.update_post("error");
            } 
        });
    }

function postToPage(to_user_id, title1, url_to_picture, link_to_open) {
    var control = document.getElementById("my_silverlight");
    //this will publish a story to page if the user is the page's administrator (post owner will be the page itself)
    FB.ui({
        method: 'feed',
        name: title1,
        display: 'iframe',
        link: link_to_open,
        description: 'Some description',
        caption: 'Some caption',
        picture: url_to_picture,
        type: 'photo',
        to: to_user_id,
        from: to_user_id
    }, function (response) {
        if (response && !response.error) {
            control.content.PageName.update_post("success");
        } else {
            control.content.PageName.update_post("error");
        }
    });
}

function postToGroup_Event(to_profile_id, title1, mes, url_to_picture, link_to_open) {
    var control = document.getElementById("my_silverlight");
    //this will publish a story to a group or an event as the curent user 
    FB.api("/" + to_profile_id + "/feed", 'post', { name: title1, link: link_to_open, description: 'Some description', caption: 'Some caption', picture: url_to_picture, message: mes }, function (response) {
        if (response && !response.error) {
            control.content.PageName.update_post("success");
        } else {
            control.content.PageName.update_post("error");
        }
    });
}

function upload_foto(from, to_profile_id, url_to_foto, mess, own_wall) {
    var control = document.getElementById("my_silverlight");
    //this will publish a foto with a message to a profile
    FB.api(to_profile_id + '?fields=access_token', function (response) {
        if (response && !response.error) {
            FB.api(to_profile_id + '/photos', 'post', { from: from, url: url_to_foto, message: mess, access_token: response.access_token }, function (response) {
                if (response && !response.error) {
                    control.content.PageName.update_post("success", response.post_id);
                } else {
                    control.content.PageName.update_post("error", "");
                }
            });
        } else {
            control.content.PageName.update_post("error", "");
        }
    }, { scope: '' });
}
4

1 に答える 1

1

関数「upload_foto」が問題です。

Facebook ポリシーによると、事前入力キャプション (メッセージ) を送信することは、Facebook プラットフォーム ポリシーのセクション IV.2 に違反しています。このポリシーでは、ユーザーがワークフローの早い段階でコンテンツを作成した場合を除き、アプリがユーザーに代わって公開された写真のキャプションを事前入力することを禁止しています。

「メッセージ」はアプリでは設定できません。これは、ユーザーにメッセージを書かせるか、何も含めないようにする必要があることを意味します。

于 2013-12-23T12:19:47.787 に答える