我發現如何訂購IE打開一個網頁,發送一些POST數據。
添加一個名爲的Microsoft Internet Explorer控制到項目中的COM參考。
然後創建post string
與場和它的值由&
分離,然後轉換該string
成byte array
。
而在剛剛結束不得不要求IE導航到url
,也發送POST數據轉化爲byte array
,然後添加它,當我們提交表單中添加相同的標題。
這裏所說:
using SHDocVw; // Don't forget
InternetExplorer IEControl = new InternetExplorer();
IWebBrowserApp IE = (IWebBrowserApp)IEControl;
IE.Visible = true;
// Convert the string into a byte array
ASCIIEncoding Encode = new ASCIIEncoding();
byte[] post = Encode.GetBytes("username=fabio&password=123");
// The destination url
string url = "http://example.com/check.php";
// The same Header that its sent when you submit a form.
string PostHeaders = "Content-Type: application/x-www-form-urlencoded";
IE.Navigate(url, null, null, post, PostHeaders);
注:
要嘗試,如果這個工程。不要忘記,你的服務器端頁面將不得不寫/回聲名爲:用戶名和密碼的郵政領域。
PHP代碼示例:
<?php
echo $_POST['username'];
echo " ";
echo $_POST['password'];
?>
ASP代碼示例:
<%
response.write(Request.Form("username"))
response.write(" " & Request.Form("password"))
%>
和頁面將顯示是這樣的:
晶圓廠io 123
ábio:沒有理由在標題和標籤中加入「C#」。請將它留在標籤中。 – 2010-07-28 01:26:05
@Jonh Saunders:當然,你對我的問題有什麼建議嗎? – 2010-07-28 01:45:23