Cur*_*urt 6 asp.net iframe redirect response.redirect
我知道这是不可能的,但是想要Response.Redirect从iFrame 做什么,重定向父页面的最佳选择是什么?
小智 11
你不能使用ASP.NET来做到这一点.服务器端的ASP.NET可以重定向传入的请求,但无法知道父帧.
但是如果你想在某些服务器端条件下重定向父框架,你可以从服务器调用JavaScript,如下所示:
protected void Page_Load(object sender, EventArgs e) {
ClientScriptManager.RegisterClientScriptBlock(this.GetType(),
"RedirectScript", "window.parent.location = 'http://yoursite.com'", true);
}
Run Code Online (Sandbox Code Playgroud)
当然,您可以在客户端使用简单的JavaScript window.parent.location ='http://yoursite.com'.
我只是成功地使用了以下代码.它甚至绕过了if X-Frame-Options SAMEORIGIN并允许在iframe中从一个域重定向到另一个域:
string url = "https://siteurl.com";
Response.Write("<script>top.location='"+url+"';parent.location='"+url+"';</script>");
Run Code Online (Sandbox Code Playgroud)
使用字符串插值(因为C#6):
string url = "https://siteurl.com";
Response.Write($"<script>top.location='{url}';parent.location='{url}';</script>");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35232 次 |
| 最近记录: |