因此,我正在开发另一台服务器上存在的新闻源以及该Feed描述的静态PDF文档。
我正在尝试实现仅客户端的feed解析,因为我不确定后端服务器的功能是什么。
作为一种快捷方式,我正在使用Blastcasta.com
解析JSON的Atom提要url = "http://www.blastcasta.com/feed-to-json.aspx?feedurl=http://[atomLocation]/newsletter.atom"
data = {}
$.ajax({
url: url + "?callback=?",
dataType: "jsonp",
data: data,
success: function(data) { onSuccess(data); },
error: function() { alert('Failed to parse feed'); },
});
如果我将dataType设置为'application / json',我会得到一个交叉原点错误。如果我将它设置为'jsonp',我会得到'语法错误:意外令牌:'。
据我所知,jsonp是json包装在一个函数或类似的东西中。
是否有合理的解决方法,或者我是否需要“吮吸它”并开发服务器端的atom-to-jsonp服务?
答案 0 :(得分:1)
此服务返回JSON或类似:
variable = {...}
如果设置了param
url参数,而不是JSON-P :(
使用dataType: "jsonp"
无效,dataType: "json"
也不起作用,因为该服务不允许跨域ajax请求(因为没有设置Access-Control-Allow-Origin标头 - >见:CORS)
解决方法是插入<script>
标记,如下所示:
<script type="text/javascript" src="http://www.blastcasta.com/feed-to-json.aspx?feedurl=<your url here>¶m=myVariable"></script>
然后myVariable
包含返回的对象。