我一直在尝试使用jquery xml解析器从picasa中提取相册的名称。但是,当我使用“https://picasaweb.google.com”链接时,该功能无效。关于我做错了什么的线索?
<script>
$(document).ready(function()
{
$.ajax({
type: "GET",
url: "https://picasaweb.google.com/data/feed/api/user/userID?kind=album&access=visible",
dataType: "xml",
success: parseXml
});
});
function parseXml(xml)
{
$(xml).find('entry').each(function()
{
$("#output").append($(this).find('title').text() + "<br />");
});
}
</script>
<div id="output"></div>
答案 0 :(得分:3)
对于下面感兴趣的人是更正后的代码
<script>
$(document).ready(function()
{
$.ajax({
type: 'GET',
url: 'https://picasaweb.google.com/data/feed/api/user/userID?kind=album&access=visible',
crossDomain: true,
dataType: 'jsonp',
success: parseXml
});
});
function parseXml(xml)
{
$(xml).find('entry').each(function()
{
$("#output").append($(this).find('title').text() + "<br />");
});
}
</script>
答案 1 :(得分:2)
您可以通过
执行跨域请求(如果服务器支持)设置crossDomain:true
(在jquery 1.5中添加)
和/或
设置dataType:'jsonp'
或者您可以创建一个服务器端代理,您可以执行ajax请求,代理将从Web服务获取数据并重新获取响应
请参阅此答案,以便在PHP中创建和获取数据 jQuery.ajax() parsererror
答案 2 :(得分:1)
您尝试访问different origin上的数据而不使用JSONP,浏览器会在您面前放置安全墙。