можно ещё добавить обработку ситуации, когда в ответ вернётся невалидный json. всякое бывает.