每個因特網用戶端應用程式的基礎都是因特網會話。 MFC 會將因特網會話實作為 CInternetSession 類別的物件。 使用此類別,您可以建立一個因特網會話或數個同時會話。
若要與伺服器通訊,您需要 CInternetConnection 物件以及 CInternetSession。 您可以使用 CInternetConnection、CInternetSession::GetHttpConnection 或 CInternetSession::GetGopherConnection 來建立 。 這些呼叫都是通訊協議類型特有的。 這些呼叫不會在伺服器上開啟檔案以供讀取或寫入。 如果您想要讀取或寫入數據,您必須以個別步驟開啟檔案。
對於大部分的因特網會話, CInternetSession 物件會與 CInternetFile 物件手牽手運作:
針對因特網會話,您必須建立 CInternetSession 的實例。
如果您的因特網會話讀取或寫入數據,您必須建立
CInternetFile實例(或其子類別 、CHttpFile 或 CGopherFile)。 讀取數據最簡單的方式是呼叫 CInternetSession::OpenURL。 此函式會剖析您提供的通用資源定位器(URL),開啟 URL 所指定伺服器的連線,並傳回只讀CInternetFile物件。CInternetSession::OpenURL不是一個通訊協議類型特有的 ,相同的呼叫適用於任何 FTP、HTTP 或 gopher URL。CInternetSession::OpenURL甚至可與本機檔案搭配使用(傳CStdioFile回 而非CInternetFile)。如果您的因特網會話未讀取或寫入數據,但會執行其他工作,例如刪除 FTP 目錄中的檔案,您可能不需要建立 的
CInternetFile實例。
有兩種方式可以建立 CInternetFile 物件:
如果您使用
CInternetSession::OpenURL建立伺服器連線,則呼叫OpenURL會傳回一個CStdioFile。如果使用
CInternetSession::GetFtpConnection、GetGopherConnection或GetHttpConnection來建立您的伺服器連線,您必須分別呼叫CFtpConnection::OpenFile、CGopherConnection::OpenFile或CHttpConnection::OpenRequest來分別傳回CInternetFile、CGopherFile或CHttpFile。
實作因特網用戶端應用程式的步驟會因您使用其中OpenURL一個函式建立一般因特網用戶端GetConnection或通訊協定特定用戶端而有所不同。