0

我正在尝试使用 dojo 进行跨域请求。外部 url 是 MIME 类型 text/html 页面上唯一的内容是 1236 之类的东西。我试过了

dojo.require("dojo.io.script");
    dojo.ready(function() {
      dojo.io.script.get({
          url: "theexternalurl",
          callbackParamName: "jsoncallback",
          load: function(data) {
              console.log(data);
          }
     });
});, 

但这并不好。关于如何使用 dojo 完成此操作的任何想法?

4

1 回答 1

0

我怀疑您在这里遇到了浏览器安全问题。跨域请求仅在使用 iframe 或注入脚本(如您所做的那样)并且该脚本的内容有效时才有效"text/javascript"

如果您尝试将“text/html”加载到脚本中,它将无法工作,因为它不是有效的脚本。这是我们大多数人在某个时候尝试过的事情。我花了几个小时试图绕过跨域限制,并发现阻止它的安全性是可靠的。

有关更多详细信息,请参阅我的答案

如果您要做的只是将内容加载到页面上,那么您可以使用<iframe>。但是,如果您尝试以某种方式解析加载的内容,恐怕这是一个死胡同。可能不是您希望的答案,但它会为您节省数小时的挫败感。

于 2013-02-07T06:49:10.297 回答