Read news from feed using jquery (cross domain), Getting Uncaught SyntaxError: Unexpected token < error
Read news from feed using jquery (cross domain), Getting Uncaught SyntaxError: Unexpected token < error
我正在尝试从 SharePoint 站点及其跨域访问读取雅虎新闻提要。我正在使用提到的代码进行访问,但出现以下错误,我浏览了很多网站和博客,但仍然没有运气。 (我是 运行 这个代码在 Chrome 控制台)
Uncaught SyntaxError: Unexpected token <
$.ajax({
type:"GET",
url:"https://www.yahoo.com/news/rss/world",
dataType: "jsonp",
success: function(data){
console.log(data);
}
});
求推荐!
正如我从 API 中看到的,存在的数据不是 json,因此您会得到以下错误
将数据类型更改为 xml
$.ajax({
type:"GET",
url:"https://www.yahoo.com/news/rss/world",
dataType: "xml",
success: function(data){
console.log(data);
}
});
但是,如果 API 没有设置访问控制 headers,您可能会遇到 CORS
错误
如果你正在获取 Cors origin ,访问被拒绝或者不允许你获取这些数据,
最好的选择是在服务器端点击 http get 请求后解析数据,然后将其加载到 HTML 页面
所以步骤将是
- ajax会请求一个本地文件
- 然后服务器端(您请求的本地文件)将执行 http get 请求以拉取页面
- 这将获取整个页面,您可以通过了解数据的标签来获取数据
- 最终解析您的数据哟 json 对象并将其传递给您的 ajax 请求
Google API Feed 已经 deprecated.So 尝试使用 rss2json 网站阅读转换为 json.
的 rss
http://rss2json.com/
示例:
将你的 rss url 如下所示
url: "https://api.rss2json.com/v1/api.json?rss_url=" + "https://www.yahoo.com/news/rss/world",
代码
var url= 'https://www.yahoo.com/news/rss/world';
$.ajax({
type: 'GET',
url: "https://api.rss2json.com/v1/api.json?rss_url=" + url,
dataType: 'jsonp',
success: function(data) {
console.log(data.feed.description);
console.log(data);
}
});
这是有效的 jsfiddle:http://jsfiddle.net/yvzSL/1406/
我觉得应该对你有帮助
我正在尝试从 SharePoint 站点及其跨域访问读取雅虎新闻提要。我正在使用提到的代码进行访问,但出现以下错误,我浏览了很多网站和博客,但仍然没有运气。 (我是 运行 这个代码在 Chrome 控制台)
Uncaught SyntaxError: Unexpected token <
$.ajax({
type:"GET",
url:"https://www.yahoo.com/news/rss/world",
dataType: "jsonp",
success: function(data){
console.log(data);
}
});
求推荐!
正如我从 API 中看到的,存在的数据不是 json,因此您会得到以下错误
将数据类型更改为 xml
$.ajax({
type:"GET",
url:"https://www.yahoo.com/news/rss/world",
dataType: "xml",
success: function(data){
console.log(data);
}
});
但是,如果 API 没有设置访问控制 headers,您可能会遇到 CORS
错误
如果你正在获取 Cors origin ,访问被拒绝或者不允许你获取这些数据, 最好的选择是在服务器端点击 http get 请求后解析数据,然后将其加载到 HTML 页面 所以步骤将是
- ajax会请求一个本地文件
- 然后服务器端(您请求的本地文件)将执行 http get 请求以拉取页面
- 这将获取整个页面,您可以通过了解数据的标签来获取数据
- 最终解析您的数据哟 json 对象并将其传递给您的 ajax 请求
Google API Feed 已经 deprecated.So 尝试使用 rss2json 网站阅读转换为 json.
的 rsshttp://rss2json.com/
示例:
将你的 rss url 如下所示
url: "https://api.rss2json.com/v1/api.json?rss_url=" + "https://www.yahoo.com/news/rss/world",
代码
var url= 'https://www.yahoo.com/news/rss/world';
$.ajax({
type: 'GET',
url: "https://api.rss2json.com/v1/api.json?rss_url=" + url,
dataType: 'jsonp',
success: function(data) {
console.log(data.feed.description);
console.log(data);
}
});
这是有效的 jsfiddle:http://jsfiddle.net/yvzSL/1406/
我觉得应该对你有帮助