1

過去にタイムラインにメッセージを投稿しようとしたところ、「Facebook.FacebookOAuthException : (OAuthException - #100) (#100) 公開された投稿にスケジュールされた公開時刻を指定できません」というエラーが表示されました。現在の日付、過去の日付、または将来の日付を入力します。結果は同じです。

UNIXタイムスタンプを取得する方法に問題があると思います。

コードは次のとおりです。

public void PostPostsOnTestUserTimeline()
    {

        string userId = "[TEST_USER_ID]"; 

        var client = new FacebookClient(accessToken);
        dynamic parameters = new ExpandoObject();
        parameters.message = "Check out this funny article - 39";

        parameters.scheduled_publish_time = GetUnixTimestamp(DateTime.Now.AddMinutes(20));

        client.Post(string.Format("{0}/feed", userId), parameters);


    }

    private long GetUnixTimestamp(DateTime dateTime)
    {
        double secondsDouble = (dateTime - new DateTime(1970, 1, 1).ToLocalTime()).TotalSeconds;
        return Convert.ToInt64(secondsDouble);
    }

なぜクラッシュするのか分かりますか?"created_time": "2013-03-05T12:34:15+0000" に作成されたテスト ユーザーのタイムラインに書いています。schedule_publish_time を指定しなければ、問題なく動作します。

ありがとう、ユリア

4

1 に答える 1

1

ユーザーのタイムラインでフィードの投稿をさかのぼる方法はありません。この機能は、ページまたは Open Graph の公開に対してのみ存在します。

于 2013-03-05T21:51:40.780 に答える