Rest api 跨域访问 前后端实现
客户端:
<pre name="code" class="java"><script> function getIP(){ $.ajax({ url:"http://localhost:8911/api/getinfo",type:"get",jsonp:'jsonpcallback',dataType:"jsonp",//跨域必须用jsonp cache:false,success: function(obj){ alert(obj.ip+obj.mac); } }); } </script>
服务器端:jersey对jsonp的支持
@GET @Path("getinfo") @Produces("application/json") public String getInfo(@QueryParam("jsonpcallback") String jsonpcallback){ String mac="",ip=""; try { mac = Util.getMac(); } catch (IOException e) { // Todo Auto-generated catch block e.printstacktrace(); } ip = Util.getIp(); return jsonpcallback+"({\"ip\":\""+ip+"\",\"mac\":\""+mac+"\"})"; }
2.当请求数据类型为jsonp时,会将callback=jsonpCallback加在url上,http://localhost:8911/api/getinfo?callback=jsonpCallback参考
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。