Я не могу сказать вам, что лучше (потому что в любом случае это, вероятно, несколько субъективно), но я могу рассказать вам о моем недавнем проекте.
Поскольку это было очень богатое веб-приложение, и запросы данных к серверу были бы частыми, я хотел убедиться, что размер запросов был как можно меньше. Это означает выбор JSON в качестве формата.
Далее, из-за природы приложения и того факта, что мои разработчики флеш / флекс были за 1000 миль, мне понадобился API, который был бы простым и без состояния. В конечном итоге это привело нас к HTTP + REST.
Итак, коммуникационный уровень моего приложения представляет собой простой набор ресурсов REST на основе Zend Framework с такими URI, как
user/10
review/15
location/8/reviews
Все они возвращают JSON. Также существует общий формат JSON для всех ошибок (исключения перехватываются и преобразуются в объекты JSON), чтобы флэш-клиент мог легко обрабатывать ошибки.