VK API: как на php, автоматически вытягивать версию api?
Добрый вечер!
Подскажите, можно ли автоматически вытягивать версию vk api?
API постоянно обновляется, и мои запросы, в какой-то момент могут перестать работать, из-за несовместимости версий. И я хочу этого избежать.
Как я могу послать запрос vk и вытянуть версию его api в переменную?
обновления можно найти тут https://dev.vk.com/reference/versions , тебе нужно сохранять последнюю минорную версию api и проверять наличие страницы новой версии
if (@get_headers("https://dev.vk.com/reference/version/5.{++$minorVersion}")) {
// сохраняем новое значение $minorVersion
}
версия api не просто так меняется. там могут измениться параметры как запроса так и ответа. вытягивание версии api твою программу за тебя не переделает под новое api.
p.s. просто вынеси версию в какой-нить .env и обновляйся вручную в одном месте со всеми тестами и проверками, что все работает правильно и ничего не упало.
Дмитрий Гординский, что именно? вариант, когда ты автоматом не меняешь версию - программа будет работать на старой версии. никаких непредсказуемых результатов и не будет.
а когда ты будешь автоматом менять версию на новую - вот там как раз шанс и на падение и на непредсказуемые результаты
Шансов, что за пару версий, вызываемые методы изменятся настолько, что сломают мне вывод - минимальны. В каких случаях это может случиться? - В случае добавления новых обязательных полей. В случае смены нейминга полей. Причём в первом случае, я гарантировано получу общую ошибку, из списка ошибок, как и при устаревшей версии api.
А какие плюсы? Мой код будет жить дольше, хоть и с не самым актуальным функционалом, но выполняющим свои задачи. А если всё посыпется, мне в любом случае читать доку.
MyQuestion, как раз так и твой код проживет дольше если ты НЕ будешь обновляться на каждую вышедшую версию. вк официально поддерживает каждую версию 2 года. не официально - намного дольше. т.е. даже теоретически твой код проживет без проблем как минимум 2 года. а вот если ты будешь переходить каждый раз на новую - с каждым этим переходом всегда есть шанс, что твой код перестанет работать