Perl網路程式設計的10個模組

zk1878發表於2011-04-09

原文http://hi.baidu.com/jx89/blog/item/d895d3742fe76417b151b97a.html

你可能已經知道,Perl綜合典藏網(Comprehensive Perl Archive Network,CPAN)上有很多現成的Perl模組,能夠讓開發人員高效地完成常見任務。CPAN在網路程式設計上提供的資源尤其如此,它有數千個模組,從一般的(伺服器守護程式)到針對性非常強的應用程式(比如與思科路由器進行互動的程式)。由於網路程式設計是大多數開發人員覺得可能會存在困難的地方,所以你值得花點時間讀一下本文的內容,看看是否能夠找到可以幫助你完成下一個專案的東西。

通過列舉出CPAN中最有意思的網路程式設計模組(表格A),本文為你瀏覽CPAN網路程式設計板塊提供了一個起點。

注:按照CPAN Web網站上提供的幫助,你可以直接從Internet上安裝CPAN模組。

表格A

模組名稱

描述

Net::Server

這個模組提供的例程可以建立一個全功能的伺服器,它可以作為單連線伺服器執行,也可以通過*NIX的inetd守護程式執行。它支援很多伺服器特性,比如TCP、UDP和UNIX套接字的多路複用、分支、訪問控制和事件處理,而且很容易通過子分類來擴充套件。

當你需要針對特定的需求建立一個高度自定義、可擴充套件的伺服器時使用它。

Net::POP3

這個模組提供的例程可以利用Perl來連線POP3電子郵件伺服器並進行事件處理。有了這個模組,你的Perl應用程式能夠進行身份驗證、讀取和刪除訊息,或者使用預先定義的API獲取資訊列表。

當你需要建立一個基於POP3電子郵件客戶端的時候使用這個模組。

LWP

這個模組提供一個用來建立HTTP客戶端和伺服器的介面。它提供的物件導向的介面通過Perl來傳送HTTP請求和解釋HTTP的響應。它還支援代理伺服器、cookie、HTTP身份驗證和內容溝通,以及重新引導等,當你需要建立一個與Web伺服器進行事件處理的HTTP客戶端時,它就非常好用了。

當你需要建立一個與Web伺服器進行互動操作的HTTP客戶端時使用這個模組。

Net::Socket

這個模組提供的物件導向介面用來建立、管理和終止Perl環境裡TCP/UDP套接字。

當你需要一個物件導向的介面在TCP/IP環境下進行套接字程式設計時使用這個模組。

Net::DNS

這個模組提供了一個與DNS系統的介面,讓你能夠通過Perl應用程式在遠端主機上進行復雜的DNS查詢。這個模組還提供了對DNS響應的不同區段的OOP訪問。

當你需要執行DNS查詢,比如查詢名字伺服器和MX記錄,或者進行區域轉移時使用這個模組。

Net::Packet

這個模組提供了一個用於建立和傳輸網路資料包的低階介面。你可以用它來建立不同的資料幀層,並把結果傳送到網路上。

當你需要自定義建立TCP、UDP、ICMP、IPv4或者IPv6資料包時使用這個模組。

Net::Fileshare

這個模組提供一個用來建立檔案共享客戶端和伺服器的API。客戶端可以是互動式的也可以是全自動的。

當你需要建立一個能夠散發檔案的伺服器或者建立一個能夠自動下載的客戶端時使用這個模組。

Net::FTP

這個模組提供一個用來包裝FTP協議的包裝程式,從而使得用Perl語言編寫FTP客戶端應用程式成為可能。它支援PASV事件處理、ASCII和二進位制檔案傳輸,以及遠端伺服器上的大多數常見FTP檔案操作。

當你需要通過Perl應用程式進行FTP檔案上傳或者下載時使用這個模組。

Net::YMSG

這個模組提供了一個與Yahoo! Messenger即時訊息服務的介面,從而讓你的Perl應用程式可以通過該服務進行身份驗證、傳送和接收訊息。

當你需要一個基於Perl的介面與Yahoo! Messenger使用者進行通訊的時候使用這個模組。

Net::SSH::Perl

這個模組提供了一個與SSH1和SSH2安全外科協議(secure shell protocol)的介面。這個模組本身還支援密碼和私鑰驗證,對所有的資料自動進行加密,並且讀取已有的SSH配置。

當你的Perl應用程式要與受到SSH保護的主機進行介面時使用這個模組。

 

注:這是從網上搜集的,原文已經不知道是誰寫的了,原有連結大部分已經失效或者過時了,我都重新改過的,或者直接去http://search.cpan.org/搜尋也行。

 

相關文章