在HTTP POST中传递JSON对象与JSON字符串

时间:2016-04-26 09:42:43

标签: json http

我正在使用JAVA和C#构建REST API,我想知道我应该如何将数据传递给这些服务。

我熟悉的正确方法是将JSON对象作为POST正文中的数据发送:

{name:'Dor'}

但我也可以传递一个字符串并在我的服务中解析JSON:

'{name:'Dor'}'

性能因素的首选方法是什么?或任何其他因素?

1 个答案:

答案 0 :(得分:0)

基本上,如果你需要通过jquery发送json数据,那么我们需要使用stringify,否则数据将被序列化为key = value对。

因此,您无法通过jquery ajax方法直接发送json对象。 如何在引擎盖下工作:

在$ .ajax函数中,如果我们提供数据

data :{key1:"value1", key2:"value2"}
is serialized to key1=value1&key2=value2

如果我们提供数据

data :'{key1:"value1", key2:"value2"}' or JSON.stringify({key1:"value1", key2:"value2"})
is sent as {key1:"value1", key2:"value2"}

所以,我们可以得出的结论是,我们不能直接通过jquery传递json对象,我们只能发送json字符串。希望这能澄清每个人。