В чем практическая разница между xml, json, rss и atom при взаимодействии с Twitter?

StackOverflow https://stackoverflow.com/questions/453158

Вопрос

Я новичок в веб-сервисах, и в качестве введения я поиграю с Twitter API, используя Twisted framework на python.Я ознакомился с различными форматами, которые они предлагают, но мне все еще не ясно, какой из них мне следует использовать в моем довольно простом проекте.В частности, я хотел бы получить рекомендации по практическому различию между использованием JSON или XML.Все, что я делаю, это запрашиваю общедоступную временную шкалу и кэширую ее локально.

Спасибо.

Это было полезно?

Решение

Для меня это сводится к удобству.Используя XML, я должен проанализировать ответ в DOM (или, чаще всего, ElementTree).Используя JSON, один вызов simplejson.loads(json_string), и у меня есть собственная структура данных Python (списки, словари, строки и т.д.), Которую я могу начать повторять и обрабатывать.Все, что означает написание на несколько строк кода меньше, на мой взгляд, обычно является хорошей идеей.

Я часто использую JSON для перемещения структур данных между PHP, Python и JavaScript - опять же, потому что это избавляет меня от необходимости вычислять сериализацию XML, а затем анализировать ее на другом конце.

И, как сказал джинзо, в конечном итоге JSON занимает немного меньше байт на проводе.

Возможно, вам пригодится моя запись в блоге о JSON, сделанная пару лет назад: http://simonwillison.net/2006/Dec/20/json/

Другие советы

RSS и Atom - это форматы XML.

JSON - это строка, которая может быть вычислена как код Javascript.

Я бы сказал, что объем данных, отправляемых по проводам, является одним из факторов.Поток данных XML будет больше, чем JSON для тех же данных.Но вы можете использовать все, что вы знаете больше / имеете больше опыта.

Я бы рекомендовал JSON, так как он более "питонический", чем XML.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top