转载并翻译自溢栈Stackoveflow

作者是Marc Gravell

JSON

  • 人类可读写
  • 解析时不需要知道范式
  • 浏览器支持极佳
  • 不像XML那么累赘

XML

  • 人类可读写
  • 解析时不需要知道范式
  • SOAP等的标准
  • 工具支持好(xsd、xslt、sax、dom等)
  • 超累赘

protobuf

  • 数据很密(输出少)
  • 不知道范式很难解析(数据格式内部是模糊的,需要范式去明确)
  • 处理极快
  • 不是为人眼阅读准备的(高密度二进制)
    以上在大多数平台都有很好的支持。
    个人来说,我现在几乎不用XML了。如果消费方是浏览器或者公共API我倾向于用JSON。内部API,由于性能原因我倾向于用protobuf。公共API两个都提供也可以(通过headers或者独立的endpoints)

标签: none 阅读量: 1107

添加新评论