从服务器请求JSON对象
Request JSON object from server?
我有一个JSON对象在服务器端:
String jsonText = JSONValue.toJSONString(users);
,我想把它发送到客户端在javascript函数中使用,如何做到这一点?
我使用JSF 2与纯JavaScript,没有其他库。
在HTTP中,服务器不向客户端发送任何东西。客户端使用请求请求某些资源,响应包含该资源。
使JavaScript函数向服务器发送一个AJAX请求,并使服务器在响应中使用这个JSON字符串进行应答(通过将JSON字符串写入响应编写器)。
请参阅http://api.jquery.com/jQuery.getJSON/从JavaScript获取JSON字符串。服务器代码就像
一样简单response.getWriter().print(jsonText);
最简单的方法是让JSF在同一视图中将JSON对象的字符串表示形式作为JS变量打印出来:
<script>var users = #{bean.usersAsJson};</script>
然而,正确的方法是使用一个完整的JSON web服务。JSF是基于组件的MVC框架,而不是JSON web服务。为此,Java EE堆栈提供了JAX-RS API。长话短说:Servlet vs RESTful。最好与jQuery或任何JS框架结合使用,这些框架能够发送Ajax请求并在基本的在线程序中操作HTML DOM树。您只需要考虑到,当与JSF结合使用时,这只能用于纯表示。 浏览器必须请求它,即该字符串必须位于请求处理链的某个位置;将响应设置为该字符串,浏览器将接收它。
我想你想说响应json字符串。这可以通过jQuery函数getJSON来实现。它将获取json字符串并将其解析为散列,然后您必须根据需要处理它。API文档
发送json对象到响应并在javascript中获得响应。使用eval函数对json对象求值
var jsonObject = eval('(' + request.responseText + ')');
相关文章:
- jQuery匹配JSON对象的部分文本
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- 我应该如何将响应数据保存在对象(json)中以获得更好的操作和性能
- 用javascript从列表对象(JSON的)构建diffrent选项卡
- php请求带有多个对象json-jquery
- AngularJS,过滤器:如何将一个巨大的对象(JSON)变成一个数组
- 动态属性对象 - JSON
- JavaScript 对象 (JSON) 中的动态设置值
- 从数组查询获取对象 JSON 值时出错
- 使用jQuerygetJSON将多维对象JSON转换为HTML
- 需要从 Angular JS 应用程序中的另一个 JSON 对象数组填充 JSON 数组的每个对象 JSON 对象数组
- 嵌套对象JSON排序JavaScript
- PHP在MySQL中保存来自Javascript的对象"JSON.stringify"通过Ajax
- 将JavaScript对象/ JSON转换为PHP数组
- JSON对象.JSON对象内部
- 访问对象的对象- JSON API
- 数组到对象JSON
- Message":"传入的无效对象(JSON数据格式化问题)