sturts2+jsonp的使用

一:百度介绍:

由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的<script> 元素是一个例外。利用 <script> 元素的这个开放策略,,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的JavaScript,用 JavaScript 直译器执行而不是用 JSON 解析器解析

二:前端使用:

<script type="text/javascript">

function test(){

$.ajax({

type: "post",dataType:’jsonp’,jsonp:’callback’,data : $(‘#register_formId’).serialize(),url:’http://192.168.191.1:8080/H5Web/menushowmanage/menushowmanage/jsonpTest?callback=?’,success:function(data){ if(data.result_code=="200"){ alert("您的操作执行成功!"); }else{ alert("操作失败") } },error:function(XMLHttpRequest, textStatus, errorThrown) {alert("404"); alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); alert(XMLHttpRequest.responseText);}});}</script>

三:后端示例

private String callback;//前端jsonp动态生成函数名称

/** * get与set方法 */

public String getCallback() {return callback;}public void setCallback(String callback) {this.callback = callback;}

/*** jsonp使用方法*/public void jsonpTest(){System.out.println("—url:"+url+"–callback:"+callback);Gson gson=Constants.GSON;}

返回前端页面jsonp的格式:

jQuery18007564855464734137_1431501866366({"result_code":"200"})

其中jQuery18007564855464734137_1431501866366是通过前端随机生成传递后台的callback值

也有伤心的,既有令人兴奋的,也有令人灰心的,

sturts2+jsonp的使用

相关文章:

你感兴趣的文章:

标签云: