簡體   English   中英

通過安全連接(SSL,https)登錄網站的簡便方法?

[英]Easy way to login to a web site over secure connection (SSL, https)?

我正在嘗試使用Borland Builder 6和Indy 10.6通過安全連接登錄網站,但我輸了。 該網站發送給我的頁面與我期望的頁面不同,因為我發布的數據可能不正確,或者缺少某些cookie。 有沒有辦法查看我發布的實際數據? 另外,我可以使用SharpDevelop和所有.Net函數。 有沒有一種簡單的方法來處理服務器和腳本生成的所有cookie和javascript變量? 我在想的是,是否有任何瀏覽器組件或用於下載登錄頁面的東西,並准備了所有必需的數據(隱藏的輸入等),並允許我只輸入數據(用戶名/密碼)並獲得網絡許可網站頁面。 或者下載登錄頁面,編輯源代碼以填寫用戶名/密碼,然后將其全部回發(就像我按提交按鈕一樣)。

謝謝,尼克

您可以將TIdLog...組件(例如TIdLogFileTIdLogEvent )分配給TIdHTTP.Intercept屬性。 這將向您顯示TIdHTTP與服務器交換的原始HTTP數據。 在加密之前和解密之后都會記錄消息,因此即使使用SSL,您也將看到未加密的HTTP消息。 您可以使用Fiddler查看真正的Web瀏覽器如何與服務器對話,然后將其與TIdHTTP對話進行比較。

通常,當您需要使用TIdHTTP自動進行Web登錄時,您必須模仿Web瀏覽器中用戶的操作。 訪問打開的頁面,讓服務器根據需要重定向您,讓服務器發送所需的任何cookie,然后您可以解析登錄表單HTML以獲取所需的任何字段值,然后使用TStringListTIdMultipartFormDataStream提交它們,具體取決於網絡表單本身的設置。 等等。

還有一點要記住的是,有些服務器對User-Agent請求標頭敏感,會向特定的Web瀏覽器發送自定義的不同響應。 因此,您可以嘗試將TIdHTTP.Request.UserAgent屬性設置為模仿主要Web瀏覽器之一的其他值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM