一尘不染

JavaScript,JSONP并从跨域读取XML

json

在我的JS项目中,我需要从跨域加载数据。(JavaScript位于域A上,数据来自域B)

我有一个使用JSONP的解决方案,但是我确实需要加载XML(普通XML音乐播放列表)。主要目标是能够加载和解析XML数据,而无需先将其修改为其他格式(例如JSONP)。

完全不可能吗? 还是有任何解决方法或黑客措施?

我主要针对iOS上的最新浏览器。

谢谢!

PS:easyXDM对您有帮助吗?还是与XML不相关?

更新:不幸的是我不能使用代理,我真的在问直接解决方案。


阅读 202

收藏
2020-07-27

共1个答案

一尘不染

您完全可以做到这一点,只需让您的域B返回类似

func("<myxml></myxml>");

要么

var someVar = "<myxml></myxml>";

JSONP 这个名称实际上与JSON并没有任何关系,因为它的概念全部是关于执行将数据嵌入代码中的JavaScript。

一旦您的域B恰好返回了上述两种形式之一,域A可以通过以下方式简单地使用它:

<script>
function func(xmlString) {
    alert(xmlString); // you can parse the xmlString with 
                      // jQuery or something else
}
</script>

或者,如果您使用第二个示例:

<script>
alert(someVar);
</script>
2020-07-27