使用jsonp实现ajax跨域请求
发布时间:2020-12-16 18:59:11 所属栏目:百科 来源:网络整理
导读:众所周知,ajax在跨域请求的时候会被浏览器的安全策略所阻止,但是在企业级项目中,经常会有不同项目之间需要进行直接通信,如果希望使用ajax的HTTP方式进行跨域请求的话,这里jsonp就可以排上用场了。直接上代码: 前端页面(跨域请求方): !DOCTYPE html h
众所周知,ajax在跨域请求的时候会被浏览器的安全策略所阻止,但是在企业级项目中,经常会有不同项目之间需要进行直接通信,如果希望使用ajax的HTTP方式进行跨域请求的话,这里jsonp就可以排上用场了。直接上代码: <!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script src="jquery.min.js"></script>
<script> function load(data){ alert(1); } </script>
<script> $.getJSON("http://localhost:8080/FHMYSQL/weui/index?jsonp=?",function(data){ alert(data[0].name); }) </script>
</head>
<body>
</body>
</html>
后台代码(被跨域代码): <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%=request.getParameter("jsonp")+"([{"name":"value1"}])"%>
这里会返回类似jsondsdf133527([{name:value1}])这样的回掉函数,去主动调用调用方ajax提供的回掉函数,这样就实现了跨域访问。不过这种跨域需要目标站后台的配合。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |