specifiesユニークさはforeign_id
とtime
フィールドに基づいています。「時間」フィールドを取得するときにタイムゾーンのバグがありますか?
私はユーザーが特定のイベントに参加するアクティビティを持っています。イベントにはタイムラインに表示したい独自の開始日がありますので、余分なデータとして送信します(名前や場所なども含みますが、ここではそれらを省略しています)。 次のアクティビティ配列を持つアクティビティをユーザーフィードに送信しました。私はGMT + 0200のタイムゾーンで(現時点では)あるアムステルダムでいます注意してください:
Array
(
[actor] => User:3
[verb] => join
[object] => Event:2
[event_start] => 2016-09-26T19:00:00+0200
[to] => Array
(
[0] => notification:2
)
[foreign_id] => join:2
[time] => 2016-09-16T13:29:13+0200
)
私は、ユーザーのユーザーのフィードことを取得すると、これはバックのように来る:
{
"duration":"17ms",
"next":"",
"results":[
{
"actor":"User:3",
"event_start":"2016-09-26T19:00:00+0200",
"foreign_id":"join:2",
"id":"cb0f4a80-7c00-11e6-8080-80010479bedb",
"object":"Event:2",
"origin":null,
"target":null,
"time":"2016-09-16T11:29:13.000000",
"to":[
"notification:2"
],
"verb":"join"
}
]
}
お知らせ日付フィールドの違い。両方ともISO8601フィールドとして提出されましたが、event_start
フィールドだけが返されます。 time
フィールドは、異なる形式で返されますが、タイムゾーンインジケーターはありません。明らかにUTC時間に変換されていますが、それにはthe trailing Z that should indicate thatがありません。そのため、私はそれを時間インジケータとして信頼できるものとすることはできません。
私はこれを回避するには、別の時間フィールドをアクティビティ配列に追加してください(正常に動作し、正しいISO8601の日付を返します)。
これはバグですか、何か間違っているのですか?またはアクティビティの発生の兆候についてtime
フィールドに頼ってはいけませんか?
クイック返信、トマソーありがとうございます。プロダクションでAPIの機能を変更することはできないと理解しています。 – Anders