如果有json和文本,可以选择哪种API响应格式?

时间:2014-02-11 10:11:19

标签: python json api text

我正在使用Python编写API库,我之前总是选择 json 作为响应格式,但此API提供文本 json 格式,我不是要问哪一个更容易或更好,我想知道使用两者的优点和缺点,因为我之前只使用过json。

我考虑过使用 text 格式,它很容易解析,但我唯一想到的是嵌套元素,但在检查示例后,它们用下划线分隔_例如:

name=VALUE
lastname=VALUE
age=VALUE
contact_email=VALUE
contact_phone=VALUE
contact_mobile=VALUE

同样 json 回复:

{
    "name": "VALUE",
    "lastname": "VALUE",
    "age": "VALUE",
    "contact": {
        "email": "VALUE",
        "phone": "VALUE",
        "mobile": "VALUE"
    }
}

使用文字而不是 json 或其他相反方式有什么优点或缺点?

2 个答案:

答案 0 :(得分:1)

JSON可以更容易,因为您可以使用json库。

你在那里看到的回报可以放入一行字典:

import json
json.loads(return_string)

比文本更容易解析!

答案 1 :(得分:1)

恕我直言,json对文本的主要优点是:

  • 干 - 有json处理的第三方库,性能非常好
  • 解析后的json最终成为一个dict,你可以通过键轻松地引用它

对于文本变体,有.ini格式,虽然您上面描述的格式并非真正针对嵌套字段和结构设计,但它可以提供结构线条。

我还会看看谁在使用您的API。例如。如果它是一个Web应用程序,那么json是可接受的格式。如果您的消费者是其他更适合文本格式的东西......