我有一个网站,我必须登录到另一个网站。两个网站访问相同的数据库。我知道我们可以使用DB来做,但客户端不接受。所以我们创建了一个中间页面来做到这一点。我们通过在查询字符串中发送数据来尝试它。但是当我们进行加密时,URL的大小会变大。所以我与他在PHP团队的一位高级负责人讨论过,他让我用POST方法在网站上发布数据。我不知道我怎么能这样做。
请建议。
以下是我的代码:
第一个网站上的登录页面:
Response.Redirect(http://ghhghg.com/TestingLogin.aspx?jaj=" +hdfUserName.Value.Trim() + "&ghhhg=" + hdfpassword.Value.Trim();
“TestingLogin”页面的页面加载:
string username = string.Empty;
string password = string.Empty;
if (!string.IsNullOrEmpty(Request.QueryString["jaj"]))
{
username = Convert.ToString(Request.QueryString["jaj"]);
}
if (!string.IsNullOrEmpty(Request.QueryString["ghhhg"]))
{
password = Convert.ToString(Request.QueryString["ghhhg"]);
}
我已从上面的代码中删除了加密。
请帮帮我。
答案 0 :(得分:0)
使用他的代码更好地发布在服务器端,我使用的代码已经存在了几年,
c#代码
public string HttpPost(string URI, string Parameters)
{
System.Net.WebRequest req = System.Net.WebRequest.Create(URI);
// req.Proxy = new System.Net.WebProxy(ProxyString, true);
//Add these, as we're doing a POST
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
//We need to count how many bytes we're sending. Post'ed Faked Forms should be name=value&
byte[] bytes = System.Text.Encoding.ASCII.GetBytes(Parameters);
req.ContentLength = bytes.Length;
System.IO.Stream os = req.GetRequestStream();
os.Write(bytes, 0, bytes.Length); //Push it out there
os.Close();
System.Net.WebResponse resp = req.GetResponse();
if (resp == null) return null;
System.IO.StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream());
return sr.ReadToEnd().Trim();
}
我希望这会对你有所帮助:)。