2
我對Web Post表單有問題。 我已經下載了頁面,我推斷了兩個必需的值(form_build_id和form_token),但是一旦發送POST,服務器在POST中將不會收到任何內容。無法發送表單的POST數據
排除錯誤:
- 錯誤的鏈接(可下載頁面)。
- 錯誤的外推數據(已驗證)。
- 錯誤的字符串myParameters(已驗證)。
- 我已經手動測試了表單,它工作正常。
有些想法嗎?在那裏,我甩了我兩天!
using (WebClientEx wc = new WebClientEx())
{
wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
string HTMLPage = wc.DownloadString(CREAT_TICKET_URL);
string form_build_id = SearchValue(HTMLPage, "<input type=\"hidden\" name=\"form_build_id\"", "value=\"", "\" />");
string form_token = SearchValue(HTMLPage, "<input type=\"hidden\" name=\"form_token\"", "value=\"", "\" />");
string myParameters = "macchina=" + cmacExtID + "&utente=" + custExtID + "&oggetto=" + Title + "&body=" + Note + "&op=Conferma&form_build_id=" + form_build_id + "&form_token=" + form_token + "&form_id=app_form_new_ticket";
string HtmlResult = wc.UploadString(CREAT_TICKET_URL, myParameters);
}
注:WebClientEx類繼承的WebClient。我將這種方法用於其他形式,如登錄和工作。
最後一個問題是:如果這種方法是錯誤的,那麼執行這個操作序列的最好方法是「下載頁面,從HTML中提取值,發送表單」?