最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • 什么是跨域?如何解决跨域问题?

    什么是跨域?

    浏览器有同源策略,禁止ajax从一个域名请求另外一个域名上的数据,如果从一个域名请求另外一个域名上的数据,就是跨域。

    那什么是同源策略,所谓同源,就是指域名、协议、端口都相同。比如说:一个浏览器打开百度的网站,然后在控制台请求腾讯的网页,浏览器会报一个不是同源的异常。如下图:

    什么是跨域?如何解决跨域问题?

    如何进行跨域请求问题呢?

    1. 使用php做代理请求

    Php是服务端语言,是没有跨域限制的。再直白一点,就是javascript通过ajax将请求交给php做,php请求到的数据再交给javascript处理。

    2. 在服务端设置响应头,允许跨域请求

    如果有可能,可以在服务端被请求页面添加响应头,

    header(”Access-Control-Allow-Origin:*”);*号表示允许所有域名访问,也可以指定允许的域名。例如:某人有两个域名,一个域名中想使用另一个域名中数据,可以这样操作。

    header(‘Access-Control-Allow-Origin:*’);

    3. 通过jsonp来实现

    实际上就是利用script标签的src属性没有跨域限制的漏洞来完成请求。例如:

    var script=document.createElement('script');
    script.setAttribute('src',"http://www.php.com/test.php?callback=response");
    $('head').append(script);
    function response(res){
    $('#result').text(res);
    
    $fun=$_GET['callback'];
    echo "$fun(".time().")";
    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » 什么是跨域?如何解决跨域问题?
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 293稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情