4

アカウントの Ad Group stats API にクエリを実行して、1 日分のデータを取得しようとしています。

Facebook ドキュメントの推奨事項は、次の例のように、ad_account タイム ゾーンに関連する時間 (UTC) と共に開始日と終了日を指定することです。

1) 太平洋時間 (2012 年 12 月 8 日):

/adgroupstats?start_time=2012-12-08T08:00:00&end_time=2012-12-09T08:00:00&
stats_mode=with_delivery&include_deleted=true&access_token=

2) サマータイム (2012 年 8 月 8 日):

/adgroupstats?start_time=2012-08-08T07:00:00&end_time=2012-08-09T07:00:00
&stats_mode=with_delivery&include_deleted=true&access_token=

私は夏時間を考慮に入れるためのより良い方法を探しているので、丸一日を終えたばかりなので、時間を完全に除外することがオプションであるかどうかを知りたい.

テストでは、次の方法でオプション 2 と同じ結果が返されることがわかりましたが、文書化されていないため、これが信頼できる方法であるかどうか疑問に思っています。

/adgroupstats?start_time=2012-08-08T00:00:00&end_time=2012-08-09T00:00:00&
stats_mode=with_delivery&include_deleted=true&access_token=
4

2 に答える 2

1

開始時刻と終了時刻を指定する必要があります。そうしないと、どの日の統計が必要かを知る方法がありません。

Stats Documentationの「Querying Unique Stats」を参照してください。

そして、「注: 時刻は UTC で表されるため、リクエストで夏時間に合わせて手動で調整する必要があります」と引用します。

したがって、解決策は、DST が開始/終了時間を調整するように要求をプログラムする方法です。

PHP を使用している場合は、こちらを参照してください: PHP で自動的に夏時間を検出するにはどうすればよいですか?

または: PHP の夏時間の検出

于 2013-02-16T15:30:05.283 に答える
1

だから私自身の質問に答えるために-最新のFB APIの更新後、タイムスタンプ部分を省略しても機能しなくなりました...

夏時間の問題の回避策として、私のコードでは、/stats API を 1 日呼び出します (開始日と終了日を同じにし、時間の部分を省略します)。

/stats?start_time=2012-08-01T00:00:00&end_time=2012-08-01T00:00:00

この呼び出しの結果を取得し、Facebook が返した時刻を調べて、FB がこのクエリをクライアントの夏時間に合わせて調整したかどうかを判断します。

FB リターン: "start_time": "2012-07-31T07:00:00+0000",

次に、正しい時間で /adgroupstats API をクエリできます。

/adgroupstats?start_time=2012-08-01T07:00:00&end_time=2012-08-02T07:00:00

注: /adgroupstats api は FB の調整された開始時刻を返さないように見えるため、回避策として /stats api を使用しました

于 2013-03-01T19:16:44.297 に答える