2010-01-06 139 views
3

我想通过jQuery AJAX提取RSS feed,但每次我都会得到一个parsererror。我的提要比较复杂(使用CDATA和自定义命名空间),所以我尝试剥离返回的文档(以及其他一百万个组合),但即使使用非常简单的文档,仍然会失败。这是我的AJAX代码:当通过jQuery获取XML时出现parseerror AJAX

$.ajax({ 
    type: 'GET', 
    url: ..., 
    dataType: 'xml', 

    success: function(xml) { 
     ... 
    }, 

    error: function(xhr, textStatus, error) { 
     console.log('status: ' + textStatus); 
     console.log(xhr.responseText); 
     showError('an unknown error occurred while trying to fetch the feed: ' + xhr.status); 
    } 
}); 

控制台输出:

status: parsererror 
<?xml version="1.0"?> 

<rss version="2.0"> 
    <channel> 
     <title>title</title> 
     <link>link</link> 
     <description>desc</description> 

     <lastBuildDate>build date</lastBuildDate> 
     <generator>gen</generator> 
    </channel> 
</rss> 
+3

什么是Content-Type标头。 – 2010-01-06 05:18:07

+0

你没有显示网址,但是你有可能尝试发出一个跨域请求(这是不可能的),这就是为什么它失败了? – Ariel 2010-01-06 05:19:42

+0

什么是原始xml文件的样子,以及错误varable包含的是什么。 – Hogan 2010-01-06 05:20:42

回答

4

确保与application/rss+xmltext/xml一个Content-Type头送达该文件。