为什么我们在向后端服务器发送数据时需要将对象转换为 JSON?

Ful*_*per 3 json

我只知道我们从后端服务器获取数据为JSON格式。首先,为什么后端服务器返回JSON(或过去的XML),而不是对象?当我们要在客户端处理数据时,为什么需要将 JSON 转换为对象?同理,当我们想将数据发送回后端服务器时,为什么需要将对象转换为JSON?

这是一些参考引用(/sf/answers/26858961/):“JSON Parser 还提供了另一个非常有用的方法,stringify。这​​个方法接受一个 JavaScript 对象作为参数,并输出一个字符串使用 JSON 格式。当您想将数据发送回服务器时,这很有用:”

问题 1:为什么它有用?

var anObject = {name: "Andreas", surname : "Grech", age : 20};
var jsonFormat = JSON.stringify(anObject);
//The above method will output this: {"name":"Andreas","surname":"Grech","age":20}
Run Code Online (Sandbox Code Playgroud)

问题 2:为什么服务器端(后端)不能使用对象而必须使用 JSON?

问题 3:为什么客户端(前端)不能使用 JSON 而必须反对?

the*_*eep 5

您所有问题的答案是:

HTTP 不以二进制形式进行通信,因此您无法来回发送对象。相反,它们需要转换为一些基于文本的系统。(Base64 很常见……还有其他的)。

JSON 不是必需的,但它在 HTTP 通信中很常见,因为它很容易与 JavaScript 对象相互转换。