从另一台服务器上托管的页面中拉出网页的一部分

时间:2014-06-11 20:39:34

标签: html asp.net-mvc entity-framework asp.net-mvc-4

我正在一个公司网站上工作,该网站托管在与主网站不同的服务器上。因此,例如,我正在使用guest.company.com,主要的公司网站是www.company.com,这两个站点托管在不同的服务器(以及不同的开发解决方案)上。

我正在处理的项目有一个来自主站点的css副本,并且具有从主站点复制的html的共享布局。这个共享布局用于我正在处理的网站的顶部和底部(页眉和页脚)。但是,我不想使用该布局和HTML的副本 - 我想实际拉入布局&来自www.company.com的css,以便在www.company.com上对该内容进行更改时,会反映在guest.company.com上。

因此,例如,www.company.com的底部“页脚”区域包含在页脚html标记中,我想在guest.company.com上显示该内容。

如何在MVC4 EF中完成?

1 个答案:

答案 0 :(得分:0)

没有快速的万无一失的方法来做到这一点。

获取HTML的快捷方法是从您的代码进行webrequest调用并获取html并从中获取所需内容(即页眉和页脚)。有关如何执行此操作的示例,请查看this msdn link。有了这个,你不需要“另一面”做任何事情。

话虽如此,它可能比这更复杂。正如评论中所提到的,css路径应该是绝对的。但是可能有图像(在html和css中)。此外,如果页眉和页脚运行任何JavaScript,它们也需要包含在页面中。您当然可以包含www.company.com页面中引用的每个JS文件,但有时会在页面上运行JS。您的webrequest调用不会运行JS。为了确保运行所有javascript并生成最终HTML,您可以使用PhantomJS

正如您可能已经注意到的,根据页眉/页脚上的内容,它可能会变成很多工作。根据我的经验,一个潜在的解决方案是拥有一个FTP位置,www.company.com复制页眉/页脚及其资产。你可以每24小时从那里拉一次。