为什么JSON响应包含在“_jqjsp”外部元素中?

时间:2013-11-14 08:54:01

标签: java json spring-mvc

我正在尝试使用Spring MVC和Java重现一些JSON。 JSON看起来像这样:

_jqjsp({
   "hits":3869,
   "highlight":{
     "include_matches":false,
     "markup_items":false
   },
   ... (lots more) ...
})

哪种Java对象类型代表外部元素_jqjsp以及它的用途是什么?

2 个答案:

答案 0 :(得分:2)

没有代表此构造的Java对象。生成JSON(它是JavaScript对象文字的有效子集),然后将其包装在“正确”的文本中。

有关何时生成此表单及其使用方式,请参阅JSONP

  

在JSONP使用模式中,<script>的src属性指向的URL请求返回JSON数据,带有围绕它的函数调用。通过这种方式,已在JavaScript环境中定义的函数可以操作JSON数据。 JSONP有效负载可能如下所示:

     

functionCall({"Name": "Foo", "Id": 1234, "Rank": 7});

虽然它本身可能不是JSONP,但取决于如何/在哪里生成块,上述相同的规则适用:输出表示可以直接执行的JavaScript代码。

答案 1 :(得分:2)

您的代码不是JSON,而是使用JSON参数调用_jqjsp函数。

_jqjsp是函数的名称,与JSON对象无关。

您可以阅读更多here