使用C#和ASP.NET,我想以编程方式在网页(表单)上填写一些值(4个文本框),然后‘POST’这些值.我该怎么做呢?

编辑:澄清:有一项服务(www.stopforumspam.com),您可以在其"添加"页面上提交IP、用户名和邮箱地址.我希望能够在我的网站页面上创建一个链接/按钮,该链接/按钮将填写这些值并提交信息,而不必复制/粘贴它们并单击提交按钮.

进一步澄清:如果表格是用C#编写的,自动垃圾邮件机器人如何填写表格并单击提交按钮?

推荐答案

代码如下所示:

WebRequest req = WebRequest.Create("http://mysite/myform.aspx");
string postData = "item1=11111&item2=22222&Item3=33333";

byte[] send = Encoding.Default.GetBytes(postData);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = send.Length;

Stream sout = req.GetRequestStream();
sout.Write(send, 0, send.Length);
sout.Flush();
sout.Close();

WebResponse res = req.GetResponse();
StreamReader sr = new StreamReader(res.GetResponseStream());
string returnvalue = sr.ReadToEnd();

Asp.net相关问答推荐

为什么 @Html.EditorFor 和 @Html.PasswordFor 在 MVC 中创建不同的样式框?

授权错误错误 400:C# 上的 redirect_uri_mismatch

DBSet 不包含 Where 的定义

使用 Asp.Net MVC 和 KnockoutJS 处理日期

ASP .Net Web API 将图像下载为二进制

如何在没有 Select 按钮的情况下在 GridView 中实现全行 Select ?

Web API Queryable - 如何应用 AutoMapper?

如何将 JQuery 与母版页一起使用?

如何从网页 (asp.net) 启动 EXE

等待本地主机,永远!

对布尔查询字符串参数使用true或1

正在检索组件的 COM 类工厂......错误:80070005 访问被拒绝. (来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))

温莎城堡有什么缺点吗?

ASP.NET 日期时间 Select 器

如何获取 ASP.NET 应用程序的完整虚拟路径

在 Android/Java 和 C# 中计算 SHA256 哈希

*.csproj 中的 usevshostingprocess 是什么?

ASP.NET:在 Response.Redirect(...) 之后代码会发生什么?

如何调试 w3wp clr.dll 错误

jQuery Ajax 调用 - 成功设置变量值