【发布时间】:2011-07-07 14:00:43
【问题描述】:
这就是我想要做的。我设置了一个程序(它可以工作,甚至可以发布到我没有代码的演示页面并返回正确的值,很快就会发布代码)并且使用我正在使用的代码,我不能查找有关如何从 PHP 读取帖子并将变量返回给 c#(用于测试阶段)的任何信息。我的最终目标是从帖子中收集信息并将其发送到与 getpost.php 页面相同的站点上的其他页面。如果有人可以帮助我解决这个问题,我将不胜感激。
class WebPostRequest
{
WebRequest theRequest;
HttpWebResponse theResponse;
ArrayList theQueryData;
public WebPostRequest(string url)
{
theRequest = WebRequest.Create(url);
theRequest.Method = "POST";
theQueryData = new ArrayList();
}
public void Add(string key, string value)
{
theQueryData.Add(String.Format("{0}={1}", key, System.Web.HttpUtility.UrlEncode(value)));
}
public string GetResponse()
{
// Set the encoding type
theRequest.ContentType = "application/x-www-form-urlencoded";
// Build a string containing all the parameters
string Parameters = String.Join("&", (String[])theQueryData.ToArray(typeof(string)));
theRequest.ContentLength = Parameters.Length;
// We write the parameters into the request
StreamWriter sw = new StreamWriter(theRequest.GetRequestStream());
sw.Write(Parameters);
sw.Close();
// Execute the query
theResponse = (HttpWebResponse)theRequest.GetResponse();
StreamReader sr = new StreamReader(theResponse.GetResponseStream());
return sr.ReadToEnd();
}
}
就像我说的,在测试页面上,一切正常,帖子被接收到测试页面并传输回我的程序。
***更新:::
好的,我在我的网站上安装了 php,用于从 C# 应用程序收集 POST 信息。现在我需要将该信息转发到我的其他网页并将用户重定向到我的其他网页,以便他们可以完成他们的会话并完成他们访问我网站的原因。
【问题讨论】:
-
我发现您想要做什么的描述令人困惑。您似乎在两种情况下使用
post:http POST 数据和在互联网上发布的日常使用。您显示的 c# 代码看起来像一个客户端应用程序。您想知道如何制作一个接受 http POST 数据的服务器托管 php 页面吗?还请解释您为什么要接受并回显相同的数据。 -
是的,我正在开发的这个应用程序是为了帮助诊断计算机问题。它从客户端收集简单信息并将其报告回服务器,报告它收到了信息,然后重定向到继续页面以通过 php 服务器端进一步诊断其余部分。全部在会话中完成,以在用户退出网站时销毁所有信息。
-
我不知道你需要什么。在我看来,这段代码工作正常。您如何在 PHP 中调试 C# 的数据接收?
-
其实我喜欢我只是想通了。我正在做的是来自应用程序,我将信息发送到 php getpost 页面,然后 getpost 页面将其写入 mysql 数据库,然后用户继续访问他们访问的网页以获取诊断应用程序。因此不重定向只是继续。