来自express static html文件的$ .getJSON()调用无法获取数据

我使用express模块​​作为我的node.js服务器的基础,并设置一个静态中间件,如下所示:

self.app.use(express.static(__dirname)); 

在根文件夹中,我有一个html文件,其中包含以下url到远程服务器上的php脚本(与托管node.js应用程序的服务器完全不同),它返回jsonp数据(从dataprovider转换为xml数据):

 var strURL = 'http://example.com/jsonp.php?callback=?&url=http://dataprovider.com/1.4/?arg1=xyz;arg2=abc'; 

然后jquery getJSON调用实际获取json数据:

 $.getJSON( strURL, function (jsondata) { // do some stuff with the json data } ); 

但是当我从静态node.js文件夹加载正在提供的html文件时,没有返回任何数据……代码永远不会到达jsondata函数。

但是,加载放在“普通”服务器上的非常相同的html文件,数据被提取得很好,而且如果我直接加载strURL,则返回数据OK。

我怀疑这与跨域问题有关,但对于我的生活,我无法使用express在静态node.js服务器中使用该页面。 我已经尝试了各种解决方案,但现在我感到非常困惑和沮丧!

欢迎任何帮助。

过去曾遇到过JSON的跨域问题,并使用JSONP绕过它们。 有一个很好的解释和教程:

http://json-jsonp-tutorial.craic.com/index.html