2012-07-08 70 views
1

堆栈溢出的帮助下,我现在有这样的jsfiddle:http://jsfiddle.net/WskJT/跨域AJAX查询

我有另一台服务器上一个aspx文件(不能访问此,所以该服务器的修订不是一个选项)和离线(php不包括一个选项)我会有一个页面,拉这个数据&删除列按照上述小提琴。

是否有任何解决方法可以从aspx文件中获取此数据& display(类似于)上述提琴的输出?

我是一个热情的新手,所以我很抱歉,如果我事先没有措辞这个正确等

谢谢!

+1

如果服务器上有文件,但无法操作服务器,那么听起来像*别人*在服务器上有文件,而不是您。无法执行跨域请求是一种安全措施。如果很容易规避,那么它就没有多大用处。 – 2012-07-08 17:21:45

+0

@amnotiam该文件位于我们的Intranet工作中,它具有关于所有部门的各种统计信息,但我们只需要实时统计我们的统计信息。 – redditor 2012-07-08 17:24:55

+1

它在本地网络上工作并不会改变安全性。这些数据可供公众使用,或者不可用。如果没有,服务器需要通过某种方式使其可用。除非目标内容与页面位于同一个域中,否则您的页面位于包含目标数据的域内更具体的域上,否则您将无法直接访问它。例如,如果数据可通过“foobar.com”访问,并且您的页面托管在“mypage.foobar.com”上,则可以使用解决方法。 – 2012-07-08 17:31:18

回答

3

尽管服务器位于您的内部网上,正如您在注释中指出的那样,但您仍将面临安全问题。你可以做的是在主页面的同一个域中创建一个“代理”Web服务。

首先在您自己的服务器上创建一个'service.php'文件。从那里,进行必要的curl调用到其他服务器上的ASPX页面。任何时候调用service.php(或者称它为proxy.php,如果你喜欢的话),它会依次调用ASPX页面和任何参数。让它读取输出文本并将文本返回给调用者本身。

将您的AJAX代码指向'service.php'文件。

现在您的JavaScript调用位于同一个域中,您不应该遇到JavaScript所面临的权限问题。

+0

谢谢你的时间,但恐怕我们无法访问服务器来完成修改(询问IT,很长,很慢,没有发生)。由于其公司机密信息,我也无法在付费服务器上执行此操作。我希望能够将HTML文件存储在我们的共享硬盘上,这样我们就可以查看数据而无需查看其他列。在这之前,我想过只是使用一些iframe来指向并查看页面的特定部分,这是技术上可行的解决方案,但非常难看。 – redditor 2012-07-08 17:48:26