使用jsonp实现ajax跨域请求

众所周知,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提供的回掉函数,这样就实现了跨域访问。不过这种跨域需要目标站后台的配合。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值