模擬提交程式相關專題
1 目錄
2 1 目的4
2 登入
2.4 例項6
3 登出
7 3.1 例項7
4 判斷是否登入成功
7 4.1 例項8
5 儲存使用者名稱和密碼
9 5.1 例項9
在此文件中,將介紹模擬提交程式相關的幾個問題
登入主要使用了自動登入和提交post的方法
htmlelement clickbtn =null;
if (e.url.tostring().tolower().indexof("***.htm") > 0) //登陸頁面
} } clickbtn.invokemember("click"); //執行按扭操作
} private
void startloop(int proxynum)
catch
} }
private
void pic_openreadcompleted2(object sender, openreadcompletedeventargs e)
} private
void pic_uploaddatacompleted2(object sender, uploaddatacompletedeventargs e)
} private
bool postwebrequest()
2.4.1httpwebrequest方法
string submitbutton = "連線網路";
byte bytearray = encoding.default.getbytes(postdata); // 轉化
newstream.write(bytearray, 0, bytearray.length); //寫入引數
newstream.close();
2.4.2webclient方法
要提交表單的uri字串。
string uristring = "";
要提交的字串資料。
string poststring = "ddddd=" + this.txtusername.text + "&upass=" + this.txtpassword.text + "&0mkkey=" + submitbutton;
初始化webclient
webclient webclient = new
webclient();
將字串轉換成位元組陣列
byte postdata = encoding.ascii.getbytes(poststring);
上傳資料,返回頁面的位元組陣列
byte responsedata = webclient.uploaddata(uristring, "post", postdata);
返回的將位元組陣列轉換成字串(html)
string srcstring = encoding.default.getstring(responsedata);
登出只是固定的轉到指定網頁,因此只需轉到那個網頁即可
system.diagnostics.process.start("iexplore.exe", "/f.htm");
將登入成功與失敗的網頁儲存起來,再將使用者登入時輸入後伺服器返回的頁面也儲存起來,比較兩個檔案的內容即可。比較兩個檔案內容不同的方法很多,比較兩個檔案的大小是一種很簡單的方法
//儲存返回的頁面
//將登陸成功和失敗的頁面分別轉換成兩個字串
streamreader streamf = new
string stringfail = streamf.readtoend();
streamreader streams = new
string stringsuccess = streams.readtoend();
streamreader streamr = new
streamreader("c:\\result.html", encoding.default);
string stringresult = streamr.readtoend();
streamf.close();
streams.close();
streamr.close();
//登陸失敗
if (stringresult.length == stringfail.length)
messagebox.show("帳號或密碼不對,請重新輸入");
//登陸成功
else
if (stringresult.length == stringsuccess.length)
} //刪除上面儲存的網頁
system.io.file.delete("c:\\result.html");
} 儲存使用者名稱和密碼可以為方便使用者使用,省去很多麻煩。可以用修改配置檔案的方法來實現
<?
xmlversion
="1.0"
encoding
="utf-8"?>
<
configuration
>
<
>
<
addkey
="username"
value
=""/>
<
addkey
="password"
value
=""/>
>
configuration
>
private
void form1_load(object sender, eventargs e)
////// ///
string: 檔名
///string: config檔案中的鍵名
///string: 相應的鍵值
public
void updateconfig(string strkey, string strvalue)
Phusion Passenge 相關專題
url 嘗鮮 url url 官方 modrails url url 自誇 quote introducing phusion passenger built on the industry standard apache web server.zero maintenance.no port ma...
curl模擬提交
header content type text html charset utf8 初始化curl ch curl init print r ch 設定curl引數 curl setopt ch,curlopt url,設定url路徑 curl setopt ch,curlopt returntr...
模擬表單提交
httpclient模擬表單提交 建立httpclient物件,相當於建立瀏覽器。closeablehttpclient client httpclients.createdefault 建立請求方法,這裡以post方法為例。httppost httppost new httppost http l...