8

Facebook OpenGraphAPIを調査しています。「なりすまし」を介してユーザーのFacebookページのニュースフィード/ウォールに公開できる「ページの管理」拡張権限があります。これは素晴らしい機能ですが、APIを介して他にできることはありますか?

具体的には、APIを介してユーザーのページに「タブ」アプリケーションを追加または削除できるようにしたいと思います。現在、ビジネス(またはプレイス)Facebookページにタブアプリを追加するプロセスをユーザーに案内するのは複雑です。ユーザーが私のアプリに許可を与えるだけで、APIを使用してアプリを追加できれば素晴らしいでしょう。 。

基本的に、APIで真の「ページ管理」が可能になるのか、それとも単にページに投稿できるのか疑問に思います。

誰かこれについて何か経験がありますか?

「page」GET変数(例: http: //www.facebook.com/add.php?api_key = xxxx&pages = 1&page = xxxxxx)を使用して「add.php」ページをポイントするのが最善ですか?これはタブアプリケーションを追加する場合は問題なく機能しますが、私が知る限り、ページからアプリケーションを削除するのに役立つものは何もありません。

ありがとう!

4

3 に答える 3

13

この質問(1歳の誕生日を祝っています!)を表示している人は、Facebookが2011年7月にAPI機能を大幅にアップグレードしたことに注意してください。タブを追加、削除、名前変更、並べ替え、デフォルトとして設定できるようになりました。 GraphAPIを開きます。ブログ投稿はこちらです:

https://developers.facebook.com/blog/post/524/

そして公式ドキュメントはここにあります:

https://developers.facebook.com/docs/reference/api/page/#tabs

Facebookにまだないのは、新しいタブアプリを作成したり、タブアイコンを変更したりするための新しいAPIメソッドです。これは大きな一歩です!

更新:新しいバグトラッカーには、APIでアプリを作成してその動作を確認したい場合にフォローするバグがあります: http: //developers.facebook.com/bugs/295627350461318

于 2011-10-04T15:57:49.057 に答える
3

APIを介してそれを行う方法があります。何時間も汗と涙を流した後、ようやく動作するようになりました:)

アプリを離れることなく、ページにタブを追加できます。これが、そのために使用したコードのスニペットです。ユーザーが管理するページのリストを取得し、ドロップダウンに表示して、[マイエージェントプロファイル]タブを追加するページを選択するように依頼します。

そして、最終的な製品は次のようになります-http://www.facebook.com/pages/Jennifer-Anderson-Real-Estate-Agent/185071901564573?sk =app_253956901293839

protected void btnAddTab_Click(object sender, EventArgs e)
{
    if (ddlPage2.SelectedIndex >= 0)
    {
        FaceBookPages page = FaceBookPages.LookupByPageID(long.Parse(ddlPage2.SelectedValue));
        if (page == null)
            throw new NPlaySysException("FaceBookPages is null.");

        AnalyticLog log = new AnalyticLog();
        log.EventID = FBCommon.Events.AddAgentAppTabID;
        log.UserID = UserID;
        log.EventTime = DateTime.Now;
        log.Update();

        string result = FacebookSvc.AddTab(Web.AgentAppID, "me", page.AccessToken);
        if (result.Equals("true"))
        {
            FaceBookPages.UpdateAgentProfileAdded(page.PageID, true);
            List<FaceBookPages> notTabbedPages = FaceBookPages.LookupAgentProfileNotAddedByUserID(UserID);

            imgStep3.ImageUrl = StepDoneImagePath;
            divStep3.Attributes["class"] = StepDoneCssClass;
            phStep3.Visible = false;
            Step3Done = true;
            btnCloseStep3.Visible = false;

            if (notTabbedPages.Count > 0)
                btnEditStep3.Visible = true;
            else
                btnEditStep3.Visible = false;
        }
        else
        {
            lblErrorAddTab.Text = "Failed to add your profile to page.";
            Web.EmailError(string.Format("FacebookSvc.AddTab Failed. result={0}<br />UserID={1}<br />PageID={2}", result, UserID, page.PageID));
        }
    }
}
于 2011-10-04T15:44:13.903 に答える
2

はい、できる最善の方法は、それらをadd.phpURLに誘導することです。あなたは彼らがアプリを削除するのを助けるために何もすることはできません。

幸いなことに、ユーザーは追加プロセスを実行し、ページのタブドロップダウンでタブを見つけて、タブを物理的に「有効化」することを決定する必要がありました。Facebookは最近これを変更し、ユーザーがアプリをページに追加するとすぐにタブが有効になるようです。

動作する「has_added_app」については...ちょっと。アプリがページに追加されているかどうかはわかりますが、タブが有効になっているかどうかはわかりません。たとえば、ユーザーはタブを無効にしても、技術的にはアプリをページにインストールできます。したがって、タブが実際に表示されていなくても、「has_added_app」はtrueを返します。

于 2010-09-22T01:20:07.337 に答える