HttpWebRequest virtuelle Taste (Schaltfläche) klicken Sie auf
Habe ich meine html-php-web-Seite mit Formular, Eingaben und füllen Sie die Schaltfläche. Mit html-Anfrage I\m versuchen, zu füllen einige Felder und eine Taste drücken, aber ich kann nicht.
Hier ist C# - code:
public static string PostData(string data)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost/request.php"); //http://businesslist.com/search/clients/?m=userspace&d=addclassified
request.Method = "POST";
request.AllowAutoRedirect = true;
request.ContentType = "application/x-www-form-urlencoded";
byte[] EncodedPostParams = Encoding.UTF8.GetBytes(data);
request.ContentLength = EncodedPostParams.Length;
request.GetRequestStream().Write(EncodedPostParams, 0, EncodedPostParams.Length);
request.GetRequestStream().Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
string str = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd();
return str;
}
static void Main(string[] args)
{
string data = PostData("name=" + HttpUtility.UrlEncode("lol") + "&btn=Clicked");
Console.WriteLine(data);
Console.ReadLine();
}
und 2 php-Dateien:
request.php
<html>
<head>
<title>HTTP Request</title>
</head>
<body>
<form action ="http://localhost/response.php" method ="POST">
<input type="text" name="name">
<input type="password" name="pass">
<select name="country">
<option value="-1" selected="selected">Select State/Country</option>
<option value="82">Select 1</option>
<option value="83">Select 2</option>
</select>
<input type="submit" name="btn">
</form>
</body>
</html>
response.php
<?php
$data = $_POST["name"];
echo $data;
?>
Hier ist der link zu meiner Website
So, wie kann ich diese Taste drücken?
- Sie nicht! Sie müssen nur die Daten posten, zu response.php - Sie brauchen, um zu emulieren, was der client tut - wenn Sie auf die Schaltfläche, es sendet die Daten an den server. Verwenden Sie ein tool wie Fiddler, um zu sehen, was die Anfrage aussieht. Sobald Sie wissen, dass Sie dann den c# - code, den Sie bereits haben, ist ein guter Anfang.
- Hm, danke, ich würde es versuchen!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich versucht, diese in LINQPad und es funktionierte:
Das problem ist, dass Sie verwendet werden
request.php
stattresponse.php
im code.