zoukankan      html  css  js  c++  java
  • 夺命雷公狗jquery---60Ajax跨域请求之方法1

    Ajax技术由于受到浏览器的限制,该方法不允许跨域通信。

    同源策略阻止从一个域上加载的脚本获取或操作另一个域上的文档属性。也就是说,受到请求的 URL 的域必须与当前 Web 页面的域相同。这意味着浏览器隔离来自不同源的内容,以防止它们之间的操作。

    JSONP是一个非官方的协议,它允许在服务器端集成script tags返回至客户端,通过javascript callback的形式实现跨域访问。

    JSONJSONP技术区别

    面试题:jsonjsonp是不是同一种技术,请说明

    答:json技术一种万能的数据传输格式,主要实现数据的传输与存储。

    jsonp技术是一种非官方协议,主要用于解决Ajax的跨域请求问题。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
            <script src="js/jquery.js"></script>
            <script>
                //页面载入事件
                $(function(){
                    //绑定相关的事件
                    $('#btnok').bind('click',function(){
                        //发送ajax
                        $.ajax({
                            type:'get',
                            url:'http://www.test.com/ajax.php',
                            cache:false,
                            dataType:'jsonp',
                            jsonp:'fn',
                            success:function(msg){
                                $(msg).each(function(i,item){
                                    var id = item.id;
                                    var username = item.username;
    
                                    $('#result').append(id+'---'+username+'<hr />');
                                });
                            }
                        })
                    });
                });
            </script>
        </head>
        <body>
            <input type="button" id="btnok" value="获取数据" />
            <hr />
            <div id="result"></div>
        </body>
    </html>

    PHP代码如下:

    <?php
        
        $fn = $_GET['fn'];
    
        //链接数据库(CRM客户关系管理系统接口)
        mysql_connect("localhost",'root','');
        mysql_query('use xsphp');
        mysql_query('set names utf8');
    
        //组装sql语句
        $sql = "select * from admin";
        $res = mysql_query($sql);
        $data = array();
        while($row = mysql_fetch_assoc($res)){
            $data[] = $row;
        }
        $str = json_encode($data);
        echo $fn."($str)";  //这里如果加上单引号就会变成字符串类型,不加单引号他就会变成OBJ类型(也就是一个数组)
  • 相关阅读:
    mysql 设置密码
    linux 下如何抓取HTTP流量包(httpry)
    m2a-vm超频的方法
    生产服务器环境最小化安装后 Centos 6.5优化配置备忘
    CentOS关闭休眠和屏保模式
    微信公众平台开发教程第2篇-----微信开发者接入
    微信公众平台开发教程第1篇-新手解惑
    android 文件读取(assets、raw)
    员工培训的七大误区和三个内核价值
    从业务专家进阶到管理者
  • 原文地址:https://www.cnblogs.com/leigood/p/4932942.html
Copyright © 2011-2022 走看看