group-telegram.com/coweram/423
Create:
Last Update:
Last Update:
Если вы спросите, какое самое фиговое API я видел, то я не дам вам ответ. Но я скажу, что API yclients очень близкое к нему. Почему? А потому что из 6 используемых ручек для интеграции, которую я разрабатываю, документации соответствует всего 2. Все остальные нещадно врут.
Ну например, вот эта ручка. В ее ответе есть как минимум следующая нестыковка - везде, где указан объект или массив объектов, вам может придти как один объект, так и массив объектов. Примеры - поля services
и staff
. Из-за говнокода приходится делать:
// Оно может быть как одним объектом, так и массивом. Хакаем систему.
staff := new(client.Staff)
if err := json.Unmarshal(appointment.Staff, staff); err != nil {
staffs := make([]*client.Staff, 0)
_ = json.Unmarshal(appointment.Staff, &staffs)
if len(staffs) > 0 {
staff = staffs[0]
}
}
И ладно бы в одном месте! У них есть вебхуки, которые работают абсолютно так же! По ним, кстати, доков вообще нету, а то, что мне прислал саппорт на почту, не соответствует действительности из-за этого их "а может дождь будет, а может не будет", то есть "а может один объект, а может массив".
Далее вообще эпичное - они деньги float'ами передают. При этом в документации пишут, что это
int
. Причем одни и те же данные в разных ручках могут быть указаны как float, и как int, и даже как number, но будет всегда float. Деньги. float. Эй, дурни, сколько будет 0.1 + 0.2
?Этим товарищам отдел разработки бы заменить нафиг...
BY Computers were a mistake
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/coweram/423