1

我需要使用 ajax get 读取我的子域上的页面内容。我想在我的子域上创建一些脚本并在我的域上调用该脚本。但是我不知道该怎么做。

有可能做这样的事情吗?如何?

编辑:

我在我的域中创建了一个页面,该页面使用 DownloadString 并下载该页面并记下结果。有更好的主意吗?

4

2 回答 2

1

如果您希望支持跨域 AJAX 请求,则需要创建一个跨域资源共享处理程序 (CORS)。我没有特定于 asp.net 的示例,但如果您使用的是 MVC,这很容易实现(并且对于 WebForms 基本相同)。

可以在此处找到一个 Web API 示例来帮助您入门: CorsHandler.cs

此外,如果您需要支持 IE 7、8 或 9,则需要查看 jQuery 扩展库,例如jQuery-ajaxTransport-XDomainRequest

编辑

如果您想查看一个完整的示例(不幸的是 Web API),这里是一个 MSDN 文章,其中包含一个完整的代码示例在 ASP.NET Web API 中实现 CORS 支持

于 2013-03-18T15:39:25.957 回答
0

您有时也可以在 JS 中操作 document.domain。因此,如果您从 www.site.com 提供页面,并且您的 Ajax 服务托管在 app.site.com,请将您的 document.domain 设置为 site.com。

于 2013-03-18T18:03:23.983 回答