在扩展mvc网站时,我要求调用外部联系表单并传递HttpPost参数。
var httpWReq = (HttpWebRequest)WebRequest.Create("url");
var encoding = new ASCIIEncoding();
var postData = CreatePostData();
var data = encoding.GetBytes(postData);
using (var stream = httpWReq.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
var response = (HttpWebResponse)httpWReq.GetResponse();
var rStream = response.GetResponseStream();
此时我得到了一个响应:a)不同的参数,例如响应中的请求URL和b)来自httpWReq.GetRequestStream()
的原始html字符串,其中包含响应页面。 html字符串中隐藏的字段告诉我,我的参数已正确接收。
但现在该如何继续?如果我重定向到url,参数就会消失。如果我从响应作为参数返回带有html字符串的ContentResult,则显示该站点但没有CSS样式。 css是相对链接的,本地部署的mvc应用程序正在查看localhost:port/site.css
资源。
提前致谢
答案 0 :(得分:0)
最后,我为我的问题找到了另一种解决方案。对于那些感兴趣的人:
我在剃刀模板中创建了另一个表单
<form action="external-url.com" name="form_contact" id="form_contact"
method="POST" target="blank">
我的所有参数都是HtmlHelpers的Html.Hidden
字段
@Html.Hidden("Parametername", Model.ParameterXy)
带有我模型的绑定值。
表单是通过JavaScript提交的。
问候