我需要基本上将一些隐藏字段发布到页面,我需要在页面中加载 浏览器窗口。
这是针对SagePay表单集成的第6页: http://www.docstoc.com/docs/10745827/Sage-Pay-Form-Protocol-and-Integration-Guidelines
我已经在使用WebRequest来创建POST但是如何发送他们需要的4个隐藏字段?
另外,如何将返回的html加载到浏览器中;这个HTML来自SagePay,客户在哪里输入他们的信用卡详细信息?
public string SendRequest(string url, string postData)
{
var uri = new Uri(url);
var request = WebRequest.Create(uri);
var encoding = new UTF8Encoding();
var requestData = encoding.GetBytes(postData);
request.ContentType = "application/x-www-form-urlencoded";
request.Method = "POST";
request.Timeout = (300 * 1000); //TODO: Move timeout to config
request.ContentLength = requestData.Length;
using (var stream = request.GetRequestStream())
{
stream.Write(requestData, 0, requestData.Length);
}
var response = request.GetResponse();
string result;
using (var reader = new StreamReader(response.GetResponseStream(), Encoding.ASCII))
{
result = reader.ReadToEnd();
}
return result;
}
答案 0 :(得分:1)
只需将4个隐藏字段添加到postData字符串中即可。这可以在此方法中或在请求中即时完成。
“隐藏”方面仅在浏览器中的GUI中隐藏。