De ce facebook returnează o oră de începere greșită pentru unele evenimente? (Programare, Facebook, Api, Facebook Graph Api)

Oleg Dats a intrebat.
a intrebat.

Folosesc api FB pentru a obține informații despre anumite evenimente. Funcționează foarte bine, dar pentru unele evenimente returnează start_time fără decalaj de fus orar.

De exemplu: "start_time": "2012-09-20T16:00:00+0000" (fusul orar este gol). Dar ar trebui să fie "2012-09-20T19:00:00+0300"
https://www.facebook.com/events/416982425024750

1 răspunsuri
Lix

Da, aveți dreptate, fusul orar ar trebui să fie fi returnat. Cu toate acestea, Facebook a făcut unele modificări (așa cum fac ei) în ceea ce privește gestionarea timpului cu evenimentele. Aflați ce au făcut cei de la Documentația evenimentelor are de spus

Notă privind migrarea fusurilor orare pentru evenimente

Începând cu migrarea „Events Timezone”, toate orele evenimentelor sunt întotdeauna șiruri de caractere în format ISO-8601; modificatorul de șiruri de caractere de interogare „date_format” nu mai are niciun efect. În prezent, se returnează următoarele formate, în funcție de tipul de eveniment:

  • Date-only (de exemplu, „2012-07-04”): evenimente care au o dată, dar nu au încă o oră specifică.
  • Precise-time (de exemplu, „2012-07-04T19:00:00:00-0700”): evenimente care încep la un anumit moment în timp, cu un anumit decalaj față de UTC. Acesta este modul în care noile evenimente Facebook țin evidența timpului și permite utilizatorilor să vizualizeze evenimente în diferite fus orar.
  • Ora locală (depreciat, de exemplu, „2012-07-04T19:00:00:00”): evenimente vechi care nu conțin informații despre fusul orar. Acest format este depreciat, dar continuă să fie returnat datorită evenimentelor vechi care sunt încă în sistem.

Cred că evenimentul specific despre care vorbiți nu are cum să calculeze decalajul fusului orar – probabil pentru că nu a fost indicată nicio locație.

Comentarii

  • Aceste evenimente au locația corectă. De exemplu (Ucraina, Lviv) și au și formatul corect „Precise-time: 2012-07-04T19:00:00-0700” Problema este că lipsește decalajul. Poate pentru că au fost create de pagina FB ? –  > Por Oleg Dats.
  • @Lix Nu înțeleg de ce facebook nu ne poate permite să cerem ora de start_time într-un anumit fus orar. –  > Por Alexander din Norvegia.
  • @ale – Depinde de noi să decidem în ce fus orar vrem să afișăm. De îndată ce ne dau decalajul, avem această informație. –  > Por Lix.
  • @ole – Se pare că nu ești singurul care a observat acest lucru 🙂 V-aș recomanda să rămâneți la curent cu acest raport de eroare. Trimiteți procesul de recreere la bug și abonați-vă la el. Vei primi actualizări atunci când lucrurile se schimbă acolo… –  > Por Lix.
  • @Lix „De îndată ce”, fiind cuvintele cheie aici. –  > Por Alexandru din Norvegia.