我需要将远程网站呈现为iframe。这很简单。由于跨域安全问题,我面临的问题是自动调整iframe的内容高度。
为了避免这种情况,我想做这样的事情:
获取服务器以请求url并将响应返回给客户端。 让客户端在视图中呈现响应。
这可能吗?关于如何实现这一目标的一些建议将不胜感激。
答案 0 :(得分:3)
您可以从服务器提取网址内容并在部分视图中传递,并在任何地方使用。
让我们说你的行动名称是 GetRemoteContent
ActionResult GetRemoteContent(string url)
{
WebClient webpage = new WebClient();
string html= webpage.DownloadString(url);
return View("RemoteContent",html);
}
RemoteContent.cshtml部分视图
@model string
<div>
@Html.Raw(model)
</div>
用法:
@{ Html.RenderAction("MyController","GetRemoteContent",new {url="http://somewebsite.com"}) }