我正在尝试建立一个宁静的环境,API
并且正在努力将JSON
数据序列化到HTTP query string
。
在请求中需要传递许多强制性和可选参数,例如(以下表示为JSON对象):
{
"-columns" : [
"name",
"column"
],
"-where" : {
"-or" : {
"customer_id" : 1,
"services" : "schedule"
}
},
"-limit" : 5,
"return" : "table"
}
我需要支持各种不同的客户端,因此我正在寻找一种标准化的方法来将此json对象转换为查询html" target="_blank">字符串。有一个,看起来怎么样?
另一种选择是允许用户仅在消息正文中传递json对象,但我读到我应该避免使用它。
有什么想法吗?
编辑以澄清:
在上面列出一些不同的语言如何编码给定的json对象:
jQuery
使用$.param
:-columns [] = name&-columns [] = column&-where [-or] [customer_id] = 1&-where [-or] [services] = schedule&-limit = 5&return = columnPHP
使用http_build_query
:-columns [0] = name&-columns [1] = column&-where [-or] [customer_id] = 1&-where [-or] [services] = schedule&-limit = 5&return = columnPerl
使用URI::query_form
:-columns = name&-columns = column&-where = HASH(0x59d6eb8)&-limit = 5&return = columnPerl
使用complex_to_query
:-columns:0 = name&-columns:1 = column&-limit = 5&-where.-or.customer_id = 1&-where.-or.services = schedule&return = columnjQuery和PHP非常相似。使用complex_to_query的Perl也与它们非常相似。但是没有一个看起来完全一样。
对您的JSON文本进行URL编码(https://en.wikipedia.org/wiki/Percent-
encoding
),并将其放入单个查询字符串参数中。例如,如果您想通过{"val": 1}
:
mysite.com/path?json=%7B%22val%22%3A%201%7D
请注意,如果您的JSON太长,则会遇到URL长度限制问题。在这种情况下,我将使用POST
主体(是的,我知道,POST
当您要获取某些内容时发送的消息不是“纯”的,并且不太适合REST范例,但是您的基于域的特定于JSON的查询语言也不是)
。
本文向大家介绍C#实现JSON字符串序列化与反序列化的方法,包括了C#实现JSON字符串序列化与反序列化的方法的使用技巧和注意事项,需要的朋友参考一下 C#将对象序列化成JSON字符串 这里主要是使用JavaScriptSerializer来实现序列化操作,这样我们就可以把对象转换成Json格式的字符串,生成的结果如下: 如何将Json字符串转换成对象使用呢? 在实际开发中,经常有可能遇到用JS传
我有课 其中field 如果使用ObjectMapper反序列化此对象 结果是这样的: 添加了转义(\),并且json字段有引号(")。如何正确摆脱这一点并制作单个JSON?像这样:
有没有一种方法可以正确地反序列化以双引号开头和结尾的JSON字符串? 数据以流的形式输入(来自AWS S3对象)。这是流的内容(注意开头和结尾的双引号字符): JsonSerializer似乎没有正确地反序列化它。但是,对于以下内容,其工作原理与预期一致: 以下是片段:
问题内容: 我正在尝试查找有关如何序列化对象以查询字符串格式的信息,但是我所有的搜索都淹没了关于如何采用另一种方法(字符串/表格/任何以JSON格式)的结果。 我有 而且我要 有什么好方法吗?我不介意插件或其他什么-如果我找到的代码不是插件,无论如何我可能都会将其重写为一个… 问题答案: 您想要的: 具体来说,您想要这样: 当给出这样的东西: 将返回此:
问题内容: 我有这个字符串: 我正在反序列化对象: 该对象看起来像: 并尝试创建字典: 但得到。 可能是什么问题? 问题答案: 请参阅mridula的答案,了解为什么您会得到null。但是,如果您想直接将json字符串转换为字典,则可以尝试以下代码段。
我的问题类似于防止GSON序列化JSON字符串,但是那里的解决方案使用GSON库,而我仅限于使用Jackson(fasterxml)。 我有一个实体类,如下所示: 我想用映射的json字符串表示填充body字段,然后将其作为ResponseEntity的一部分发送。如下事物: 预期输出: 实际输出: 我在用 Jackson Core v2.8.2 标记,但这没有帮助,因为我的字段在写入实体时已经从