首页 > 代码库 > MVC.Net:将Reponse Redirect从Get变为Post
MVC.Net:将Reponse Redirect从Get变为Post
在我们使用Response.Redirect命令的时候,有时候希望以POST的方式将参数传递过去。那么Redirect支持这种做法吗?答案是不支持。。。
======= 怎么办呢? =======
我们可以直接操作Response,生成FORM代码,利用JS跳转到目标地址。示例如下:
1 StringBuilder sb = new StringBuilder(); 2 sb.Append("<html>"); 3 sb.AppendFormat(@"<body onl oad=‘document.forms[""form""].submit()‘>"); 4 sb.AppendFormat("<form name=‘form‘ action=‘{0}‘ method=‘post‘>", [需要跳转的URL地址]); 5 sb.AppendFormat("<input type=‘hidden‘ name=‘[传递的参数名]‘ value=http://www.mamicode.com/‘{0}‘>", 6 HttpUtility.UrlEncode([传递的参数值])); // 此处必须Encode,否则单引号无法正确显示 7 // 其它参数 8 sb.Append("</form>"); 9 sb.Append("</body>"); 10 sb.Append("</html>"); 11 12 Response.Write(sb.ToString()); 13 14 Response.End();
Done!
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。