jsonP跨域解决
发布时间:2020-12-16 19:05:28 所属栏目:百科 来源:网络整理
导读:在解决跨域问题的时候,用到jsonp,前端代码仅仅在url中添加一个参数callback=? htmlhead script type="text/javascript" src="/js/jquery-1.8.3.js"/script script type="text/javascript" $(document).ready(function(){ $("button").click(function(){ //
在解决跨域问题的时候,用到jsonp,前端代码仅仅在url中添加一个参数callback=?
<html> <head> <script type="text/javascript" src="/js/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ //在url的后面添加参数:callback=?,问好的值有jQuery产生随机数 ,配置后在本地可以通过该链接访问链接后的Controller,并且接收Controller的返回值。 $.getJSON("/updateUser?name=donaldDuck&callback=?",function(data,status){ // alert("数据:" + data[0].userName + "n状态:" + status); // var dataObj=eval("("+data+")"); alert(data.id); }); }); }); </script> </head> <body> <p>姓名:<input type="text" id="test" value="米老鼠"></p> <br> <button id="button" >显示值</button> </body> </html> controller后端代码: <pre class="java" name="code">@ResponseBody @RequestMapping("/updateUser") //在参数列表中添加正常接收的参数外,还需要添加一个参数callback,用来接收在前端带过来的callback随机数。 public String updateUser(String name,String callback) throws IOException { //返回简单字符串的时候可以直接返回,返回类型String,// 添加注解@ResponseBody 返回字符串的格式为:jsonp :jQuery183017739112760886932_1438865715964({"id":"a"}),括号括起来json数据 String aa= callback+"({"id":"a"})"; System.out.println("jsonp :"+aa); return aa; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |