`
fantasy
  • 浏览: 517530 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

构建JSONP字符串

阅读更多

1.咱们需要一个这样的JSONP字符串

 var callbackP = "{\"msg\": 
[ 
\"<a href='#' target='_blank'><span class='notifyFn'>未受理<span class='notifyCount'>(50)</span></span></a>\", 
\"<a href='#' target='_blank'><span class='notifyFn'>已受理<span class='notifyCount'>(40)</span></span></a>\" 
] 
,\"success\":\"true\"}"

 

2:那么咱们先构建JSON字符串

import net.sf.json.JSONObject; 
JSONObject jsonObject = new JSONObject(); 
jsonObject.put("success", "false"); 
jsonObject.put("msg", new String[] { unviewdEqRemind, marketingRemind }); 
jsonObject.toString() 

 

3. 最后构建JSONP字符串

/** 
     * 构建JSONP需要的字符串,repalce做两件事 
     * 
     * 1:因为JSONObject会自动在字符/前加上\字符,所以需要用replace方法干掉它。 
     * 2:将JSON里的双引号加上转移字符\。 
     */
    private String buildJSONPString(String callback, JSONObject jsonObject) { 
        String resultData = new StringBuilder().append("var ").append(callback) 
                .append("=").append("\"").append( 
                        jsonObject.toString().replace("\\", "").replace("\"", 
                                "\\\"")).append("\"").append(";").toString(); 
        return resultData; 
    }
 

4. 在webx2.5中输出

  将构建完的JSONP字符串装入ActionResult里,如下。然后请求XX.do。

public ActionResult queryXpRemind( 
  ActionResult result = ActionResult.create(this); 
  result.setPlainText(jsonpString); 
  return result; 
} 

 




分享到:
评论

相关推荐

    纯servlet实现JSONP

    3. **生成响应**:Servlet将生成的JSONP字符串作为HTTP响应的正文,返回给客户端。响应的Content-Type通常设置为`application/javascript`。 4. **客户端接收并执行**:浏览器接收到响应后,由于响应类型是...

    Jsonp+asp.net

    当用户请求新一页的数据时,前端会发送一个JSONP请求到服务器,服务器返回包含所需数据的JSON格式字符串,这个字符串会被包装在一个预定义的回调函数中。前端接收到响应后,解析数据并更新表格内容。 为了实现JSONP...

    本地实现的最简单jsonp例子.zip

    例如,如果回调函数名为`handleData`,服务器会返回类似`handleData({"key": "value", "anotherKey": "anotherValue"})`这样的字符串。 在本地实现的最简单jsonp例子中,可能包含以下组件: - **HTML文件**:创建...

    跨域jsonp资料包.zip

    2. **服务器端**:根据请求中的回调函数名,构建一个返回数据的JavaScript函数调用字符串。 ### 注意事项 - JSONP只适用于简单的数据交互,对于复杂交互或需要双向通信的情况,可以考虑使用CORS(跨源资源共享)。...

    jsonp跨域请求实现示例

    描述中提到的"ajax请求地址"和"服务端要返回的jsonp字符串",分别代表客户端发起请求的URL和服务器端应返回的JSONP格式的数据。 在JSONP中,客户端(浏览器)需要创建一个预先定义好的函数,这个函数的名称在请求中...

    JSONP实现Ajax跨域访问

    2. **构造请求**:然后,构建一个包含服务器API地址的`&lt;script&gt;`标签,并将回调函数的名字作为查询字符串的一部分传递给服务器。例如:`&lt;script src="http://site1.com/api/user.php?cb=jsonpCallback"&gt;&lt;/script&gt;`。...

    jsonp json ajax跨域调用

    2. **服务器**响应请求时,将JSON数据包装在一个客户端提供的回调函数中,并将整个字符串作为响应体返回。 3. **客户端**执行这个函数,从而获取到JSON数据。 示例: 1. **客户端**创建一个`&lt;script&gt;`标签,指向...

    基于JSONP交互的模拟12306站点毕业设计

    在JSONP的应用中,JavaScript会创建一个`&lt;script&gt;`标签,其`src`属性指向服务端的URL,服务端会返回一个预定义的函数名加上数据的JSON字符串,如`callback({data: 'your_data'})`。当浏览器加载这个脚本时,会自动...

    java Servlet jsonp Demo and Test

    // 将数据转换为JSON字符串 Gson gson = new Gson(); String jsonData = gson.toJson(data); // 包裹回调函数 String jsonpResponse = callback + "(" + jsonData + ")"; // 设置响应头和内容类型 response...

    很好用的JAVA类转JSON工具:FastJSON (2).pdf

    这个方法会自动调用对象的getter方法来获取属性值,从而构建JSON字符串。 接下来,我们展示了如何将JSON字符串反序列化回`User`对象。这里使用了`JSON.parseObject()`方法,传入JSON字符串和目标类型(`User.class`...

    「JSON与JSONP的区别」.docx

    对象在JSON中表现为无序的“名称/值”对集合,用花括号{}包裹,每个成员由一个名称(字符串)和对应的值(可以是各种JSON类型)组成,成员间用逗号分隔。例如: ```json { "name": "John", "age": 30, "city": ...

    Ajax + Servlet 跨域访问(Jsonp技术)

    这段代码首先获取回调函数名,然后生成一个简单的JSON字符串,并将其包装在回调函数调用中。最后设置响应类型为`application/javascript`,确保浏览器将其作为JavaScript代码处理。 综上所述,Jsonp是一种巧妙的...

    JQuery jsonp 使用示例代码

    `: 这行代码构建了返回的JavaScript字符串,其内容为`jsonpcallback`函数调用,并传入一个包含两个对象的数组,每个对象都有`id`和`name`属性。 2. **HTML部分**: - `...

    play-jsonp-filter:Play框架的JSONP过滤器

    此过滤器在您现有的API上启用JSONP:如果查询字符串中包含其他callback参数,则任何返回JSON内容的资源都将返回JavaScript片段。 例如,如果资源/foo提供以下JSON结果: {"foo": "bar"} ,则资源/foo?callback=f将...

    vue-springboot-cros_jsonp:前初步跨域,cors,jsonp(新版springmvc)实现

    - 如果需要支持JSONP,后端需要根据请求中的`callback`参数动态构建返回的JSON字符串,将数据包裹在回调函数内。 - 前端则通过创建`&lt;script&gt;`标签并监听`onload`事件来接收和执行JSONP响应。 通过"vue-springboot...

    使用jsonp实现跨域获取数据实例讲解

    - **构建查询参数**:将需要传递的数据转换为URL查询字符串,如`id=1&count=4`,并添加回调函数名作为参数,如`callback=my_json_cb1234`。 - **创建`&lt;script&gt;`标签**:动态创建一个`&lt;script&gt;`元素,设置其`src`...

    websocketjsonp:websocket和jsonp简单演示

    2. 服务器接收到请求后,根据回调函数名生成一个包含 JSON 数据的 JavaScript 函数调用字符串,并返回给客户端。 3. 浏览器自动执行返回的 JavaScript 代码,将 JSON 数据传递给预先定义好的回调函数。 4. 客户端在...

    fastjson 1.2.9 源码 jar包 api说明

    7. 高级特性:包括流式解析和生成,以及JSONP支持,适合构建Web服务。 API说明: - `JSON.parseObject(String jsonString, Class)`:将JSON字符串解析为指定类型的Java对象。 - `JSONObject.parseObject(String ...

    json会用到的jar包和js

    这些库提供了将Java对象转换为JSON字符串和将JSON字符串解析为Java对象的方法。 1. Gson:Google提供的一个开源库,能够将Java对象转换为JSON字符串,反之亦然。Gson允许开发者通过注解来控制序列化和反序列化的...

    浅析json与jsonp区别及通过ajax获得json数据后格式的转换|angluo-ajax-145703.pdf

    JavaScript 提供了 `JSON.parse()` 方法用于将 JSON 字符串转换为 JavaScript 对象,例如: ```javascript let jsonData = '{"name": "B", "age": 23}'; let parsedData = JSON.parse(jsonData); console.log...

Global site tag (gtag.js) - Google Analytics