zoukankan      html  css  js  c++  java
  • 关于前端调用后端php数据跨域的问题

    https://blog.csdn.net/qq_21386275/article/details/87269979

    js前端

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <script type="text/javascript" src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
    <title>jsonp跨域示例</title>
    </head>
    <script>
    //下边的请求相当于发送的是:http://***/test/jsonp.php?callback=getMessage
    $.ajax({
    url:"http://***/test/jsonp.php",//你请求的地址
    type:"get",
    cache:false,
    dataType:"jsonp",
    jsonp:"callback", //传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
    jsonpCallback:"getMessage", //自定义的jsonp回调函数名称
    success:function(data){
    console.log("success:"+data['b']);
    },
    error:function(){
    alert("发生异常");
    }
    });
    //下边这个函数可以注释调,也会走success,这是jQuery的功劳。jquery在处理jsonp类型的ajax时(虽然jquery也把jsonp归入了ajax,但他们根本不是一回事儿),自动生成回调函数并把数据取出来供success属性方法来调用。
    function getMessage(jsonp){
    console.log("message:"+jsonp);
    }
    </script>
    php 部门

    <?php
    header('Content-Type:application/json; charset=utf-8');
    $handler = $_GET['callback'];//这里的callback与ajax中jsonp的值对应
    $data = array('a'=>'aaa','b'=>'中文');//发送到前端的数据
    exit($handler.'('.json_encode($data,JSON_UNESCAPED_UNICODE).');');

  • 相关阅读:
    Elasticsearch 结构化搜索
    KMP 算法
    ElasticSearch 配置
    C++ 入门
    Spark 基础操作
    HBase 与 MapReduce 集成
    iOS面试相关
    iOS开发值得学习的Demo
    Mac系统安装MyEclipse
    linux安装tomcat
  • 原文地址:https://www.cnblogs.com/cainiaoaixuexi/p/11824455.html
Copyright © 2011-2022 走看看