首页 > 代码库 > Ajax-08 跨域获取最新电视节目清单实例

Ajax-08 跨域获取最新电视节目清单实例

目标

请求江西网络广播电视台电视节目

URL:http://www.jxntv.cn/data/jmd-jxtv2.html

 分析

1.从Http头信息分析得知,器服务端未返回响应头Access-Control-Allow-xxxx 相关信息,所以只能使用JSONP方式

2.从返回值内容中分析得知,其返回值永远是:list(响应内容),即:由于服务器将函数名写死为list,所以指定callback在此程序中无效。

实现

get_tv_list.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>跨域请求最新电视节目清单</title>
</head>
<body>

<h1>跨域请求</h1>
<input type="submit" value="XmlSendRequest获取节目" onclick="XmlSendRequest();"/>

<input type="submit" value="JqSendRequest-获取节目" onclick="JqSendRequest();"/>


<script type="text/javascript" src="http://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script>
    function XmlSendRequest() {
        // 创建script标签
        var tag = document.createElement(script);
        // 指定src
        tag.src = "http://www.jxntv.cn/data/jmd-jxtv2.html";
        // 添加到head标签中
        document.head.appendChild(tag);
        // 删除script标签
        document.head.removeChild(tag);
    }

    function JqSendRequest() {
        $.ajax({
            url: "http://www.jxntv.cn/data/jmd-jxtv2.html",
            type: GET,
            dataType: jsonp
        })
    }
function list(arg) { console.log(arg); } </script> </body> </html>

 

Ajax-08 跨域获取最新电视节目清单实例