Javascript 通过jQuery从JSON的外部链接获取数据
我试图通过jQuery从JSON数据中读取数据。由于某些原因,公共汽车不起作用 这是我的JSON文件: 这是我获取数据的代码:Javascript 通过jQuery从JSON的外部链接获取数据,javascript,jquery,json,parsing,Javascript,Jquery,Json,Parsing,我试图通过jQuery从JSON数据中读取数据。由于某些原因,公共汽车不起作用 这是我的JSON文件: 这是我获取数据的代码: $.getJSON("http://goo.gl/PCy2th", function(data){ $.each(data.PlayListArray, function(key, val){ alert(val.URL); }); }); 以下是演示: 有没有办法解决这个问题?您可以创建web服务来获取所有音乐URL PHP代码: <?ph
$.getJSON("http://goo.gl/PCy2th", function(data){
$.each(data.PlayListArray, function(key, val){
alert(val.URL);
});
});
以下是演示:
有没有办法解决这个问题?您可以创建web服务来获取所有音乐URL PHP代码:
<?php
header('content-type: application/json; charset=utf-8');
header("access-control-allow-origin: *");
$array = array("https://soundcloud.com/danial-sabagh/mane", "https://soundcloud.com/ajamband/gole-iran", "https://soundcloud.com/bibakofficial/kooch", "https://soundcloud.com/bibakofficial/mohammad-bibak-in-niz-bogzarad","https://soundcloud.com/kaishakhay/whine-and-kotch-j-chapri-f","https://soundcloud.com/amirtataloo/merci","https://soundcloud.com/amirtataloo/bikhiyal");// you can also apply your business logic and get url from database
echo json_encode(array("PlayListArray"=>$array));
return;
?>
用于从php web服务调用和获取响应的JQuery代码
Javascript代码:
$.ajax({
url: 'getMusicURL.php',
type: "GET",
dataType:'json',
success:function(data){
console.log(data);//using object data you access all music array
for(var i=0;i<data.PlayListArray.length;i++){
console.log(data.PlayListArray[i]);
}
}
});
$.ajax({
url:'getMusicURL.php',
键入:“获取”,
数据类型:'json',
成功:功能(数据){
console.log(data);//使用对象数据访问所有音乐数组
对于(var i=0;i,您可以使用跨源XMLHttpRequest实现
即
返回json的服务器似乎不支持该请求
这是一个同源策略冲突-外部资源需要支持或查看浏览器控制台XMLHttpRequest无法加载http://goo.gl/PCy2th. 请求的资源上不存在“Access Control Allow Origin”标头。Origin'http://fiddle.jshell.net'因此不允许访问。
@ArunPJohny那么如何才能访问我让它工作?一些网站,如fb,通过JSON提供数据。我可以从这些服务器上毫无问题地获取数据。这就是我在第一条评论中指出的。您试图访问的资源必须支持CORS/jsonpTry,以便在服务器端获取数据,并将其发送到前端。在php文件顶部添加header('content-type:application/json;charset=utf-8');header('access-control-allow-origin:*);这两行允许访问web服务的所有url
$(document).ready(function(){
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://goo.gl/PCy2th", true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
// JSON.parse does not evaluate the attacker's scripts.
var resp = JSON.parse(xhr.responseText);
}
}
xhr.send();
});