網(wǎng)絡(luò)服務(wù)器裝置及其控制方法
【專利摘要】本發(fā)明涉及一種網(wǎng)絡(luò)服務(wù)器裝置及其控制方法。如果網(wǎng)絡(luò)服務(wù)向網(wǎng)絡(luò)服務(wù)器裝置發(fā)送注冊(cè)請(qǐng)求,且如果與從所述網(wǎng)絡(luò)服務(wù)收到的URL相同的URL已經(jīng)被注冊(cè)在網(wǎng)絡(luò)服務(wù)器裝置的網(wǎng)絡(luò)服務(wù)管理表中,那么在判定從所述網(wǎng)絡(luò)服務(wù)收到的擴(kuò)展判斷條件與注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中的擴(kuò)展判斷條件不同之后,所述注冊(cè)單元就在所述網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)所述網(wǎng)絡(luò)服務(wù)。
【專利說明】網(wǎng)絡(luò)服務(wù)器裝置及其控制方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種網(wǎng)絡(luò)服務(wù)器裝置及所述網(wǎng)絡(luò)服務(wù)器裝置的控制方法,所述網(wǎng)絡(luò)服務(wù)器裝置用于處理關(guān)于使用互聯(lián)網(wǎng)打印協(xié)議(IPP,Internet printing protocol)服務(wù)的請(qǐng)求。
【背景技術(shù)】
[0002]用于在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行多個(gè)網(wǎng)絡(luò)服務(wù)的系統(tǒng)的數(shù)量在持續(xù)增加。例如,在打印機(jī)中,諸如設(shè)備設(shè)置及管理服務(wù)(下文稱為“遠(yuǎn)程用戶界面(UI))、IPP服務(wù)及設(shè)備上的網(wǎng)絡(luò)服務(wù)(WSD,Web Services on Devices)等基于網(wǎng)絡(luò)的打印服務(wù)都在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行。
[0003]為了在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行多個(gè)網(wǎng)絡(luò)服務(wù),需要向各個(gè)網(wǎng)絡(luò)服務(wù)分配唯一的統(tǒng)一資源定位符(URL,Uniform Resource Locator)。這是因?yàn)?當(dāng)網(wǎng)絡(luò)服務(wù)器接收到請(qǐng)求以使用在網(wǎng)絡(luò)服務(wù)器上運(yùn)行的網(wǎng)絡(luò)服務(wù)時(shí),所述網(wǎng)絡(luò)服務(wù)器需要基于包含在請(qǐng)求數(shù)據(jù)的HTTP報(bào)頭中的URL信息而確定應(yīng)該將所述請(qǐng)求發(fā)送給哪個(gè)網(wǎng)絡(luò)服務(wù)來執(zhí)行。
[0004]因此,需要將網(wǎng)絡(luò)服務(wù)和URL —對(duì)一地關(guān)聯(lián)起來。通常是要求系統(tǒng)被構(gòu)造為向設(shè)備中所提供的各個(gè)網(wǎng)絡(luò)服務(wù)分配唯一的URL。
[0005]此外,日本專利申請(qǐng)?zhí)亻_2008-176789號(hào)公報(bào)描述了一種用于僅注冊(cè)URL的應(yīng)用路徑以減少網(wǎng)絡(luò)服務(wù)器上的負(fù)荷的技術(shù)。
【發(fā)明內(nèi)容】
[0006]根據(jù)本發(fā)明的一個(gè)方面,網(wǎng)絡(luò)服務(wù)器裝置包括:接收單元,被配置為從網(wǎng)絡(luò)服務(wù)接收注冊(cè)請(qǐng)求,其中,所述請(qǐng)求包括:用于識(shí)別所述網(wǎng)絡(luò)服務(wù)的URL和擴(kuò)展判斷條件;注冊(cè)單元,被配置為:如果與所收到的URL相同的URL已經(jīng)被注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表中,那么在判定所收到的擴(kuò)展判斷條件與注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中的擴(kuò)展判斷條件不同之后,所述注冊(cè)單元就將所收到的URL與所收到的擴(kuò)展判斷條件間的對(duì)應(yīng)以及用于調(diào)用所述網(wǎng)絡(luò)服務(wù)的函數(shù)注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中,所述對(duì)應(yīng)與所述函數(shù)彼此相關(guān)聯(lián)作為已經(jīng)發(fā)送所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)的信息;以及請(qǐng)求單元,被配置為:如果接收到請(qǐng)求,并且與包括在所述請(qǐng)求中的URL與擴(kuò)展判斷條件間的對(duì)應(yīng)相同的對(duì)應(yīng)被注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中的話,那么所述請(qǐng)求單元就利用與所述對(duì)應(yīng)相關(guān)聯(lián)而被注冊(cè)的函數(shù)來調(diào)用用于處理所述請(qǐng)求的網(wǎng)絡(luò)服務(wù)。
[0007]根據(jù)下文對(duì)示例性實(shí)施方式的描述并結(jié)合附圖,本發(fā)明的進(jìn)一步特征將顯而易見。
【專利附圖】
【附圖說明】
[0008]圖1示出了根據(jù)本發(fā)明第一示例性實(shí)施方式的系統(tǒng)配置圖。
[0009]圖2示出了網(wǎng)絡(luò)服務(wù)器裝置的硬件配置圖。[0010]圖3示出了網(wǎng)絡(luò)服務(wù)器的內(nèi)部模塊的配置圖。
[0011]圖4示出了網(wǎng)絡(luò)服務(wù)的內(nèi)部模塊的配置圖。
[0012]圖5A、5B、5C及均示出了網(wǎng)絡(luò)服務(wù)管理表。
[0013]圖6的流程圖示出了由網(wǎng)絡(luò)服務(wù)注冊(cè)單元執(zhí)行的處理。
[0014]圖7的流程圖示出了由網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元執(zhí)行的處理。
[0015]圖8的流程圖示出了由網(wǎng)絡(luò)服務(wù)判斷單元執(zhí)行的處理。
[0016]圖9A、9B及9C均示出了發(fā)送給網(wǎng)絡(luò)服務(wù)器或各網(wǎng)絡(luò)服務(wù)的請(qǐng)求數(shù)據(jù)。
【具體實(shí)施方式】
[0017]存在這樣的情況:即希望在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行的多個(gè)網(wǎng)絡(luò)服務(wù)使用相同的URL。例如,規(guī)定了用于指定圖像形成裝置的路徑“http://互聯(lián)網(wǎng)協(xié)議(IP)地址/”和用于指定網(wǎng)絡(luò)服務(wù)的包括一個(gè)IP地址的超文本傳輸協(xié)議(HTTP)路徑以便簡(jiǎn)化用戶的輸入。如果用戶知道該路徑,那么用戶就能利用路由路徑(“/”)而使用該服務(wù)。這樣,僅通過記住IP地址,用戶就能使用網(wǎng)絡(luò)服務(wù),從而提供了較高的易用性。因此,一個(gè)URL被用于不同的網(wǎng)絡(luò)服務(wù),以便用戶不用記住各個(gè)網(wǎng)絡(luò)服務(wù)的URL。
[0018]然而,由于上述技術(shù)提供了 URL與網(wǎng)絡(luò)服務(wù)之間的“一對(duì)多”的對(duì)應(yīng)關(guān)系,因此,在對(duì)接收到的URL做出響應(yīng)時(shí),網(wǎng)絡(luò)服務(wù)器無法識(shí)別出應(yīng)該將請(qǐng)求發(fā)送給哪個(gè)網(wǎng)絡(luò)服務(wù)。
[0019]本發(fā)明涉及一種網(wǎng)絡(luò)服務(wù)器裝置,即使在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行具有相同URL的多個(gè)網(wǎng)絡(luò)服務(wù),所述網(wǎng)絡(luò)服務(wù)器裝置也能夠允許網(wǎng)絡(luò)服務(wù)器根據(jù)接收到的HTTP請(qǐng)求來識(shí)別出需要調(diào)用哪個(gè)網(wǎng)絡(luò)服務(wù)。
[0020]以下將參照附圖詳細(xì)描述本發(fā)明的各示例性實(shí)施方式、特征及各方面。
[0021]在本發(fā)明的第一示例性實(shí)施方式中將會(huì)描述網(wǎng)絡(luò)服務(wù)器功能,即使是在多個(gè)網(wǎng)絡(luò)服務(wù)具有相同URL的情況下,所述網(wǎng)絡(luò)服務(wù)器功能也能允許網(wǎng)絡(luò)服務(wù)器識(shí)別出哪個(gè)網(wǎng)絡(luò)服務(wù)應(yīng)該處理請(qǐng)求。
[0022]圖1示出了根據(jù)第一示例性實(shí)施方式的網(wǎng)絡(luò)服務(wù)器裝置100和網(wǎng)絡(luò)客戶端裝置300的整體配置圖。
[0023]在圖1中,網(wǎng)絡(luò)服務(wù)器裝置100和網(wǎng)絡(luò)客戶端裝置300通過網(wǎng)絡(luò)200互相連接。網(wǎng)絡(luò)200可以是因特網(wǎng)或局域網(wǎng)(LAN)。
[0024]網(wǎng)絡(luò)服務(wù)器裝置100包括:用于網(wǎng)絡(luò)通信的通信單元130、用于提供網(wǎng)絡(luò)服務(wù)器功能的網(wǎng)絡(luò)服務(wù)器120以及網(wǎng)絡(luò)服務(wù)140、150、160及170。通過在網(wǎng)絡(luò)服務(wù)器120上運(yùn)行,各網(wǎng)絡(luò)服務(wù)140、150、160及170提供服務(wù)。這里“服務(wù)”表示包含在諸如上述遠(yuǎn)程Π服務(wù)和IPP服務(wù)以及網(wǎng)絡(luò)的分布式編寫和版本控制(WebDAV,Web Distributed Authoring andVersioning)服務(wù)等網(wǎng)絡(luò)服務(wù)中的功能。網(wǎng)絡(luò)服務(wù)器120通過HTTP通信接收HTTP請(qǐng)求,并將所述請(qǐng)求分配給所述請(qǐng)求中指定的網(wǎng)絡(luò)服務(wù),以便所述網(wǎng)絡(luò)服務(wù)提供服務(wù)。各網(wǎng)絡(luò)服務(wù)140、150、160 及 170 具有等同于例如通用網(wǎng)關(guān)接口 (CGI, Common Gateway Interface)或小服務(wù)程序(Servlet)的功能。各網(wǎng)絡(luò)服務(wù)140、150、160及170在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)網(wǎng)絡(luò)服務(wù)判斷條件(擴(kuò)展判斷條件)。當(dāng)網(wǎng)絡(luò)服務(wù)器120接收到與任意一個(gè)擴(kuò)展判斷條件相對(duì)應(yīng)的請(qǐng)求時(shí),網(wǎng)絡(luò)服務(wù)器120就向與所述條件相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)分配所述請(qǐng)求。這樣能夠使得網(wǎng)絡(luò)服務(wù)執(zhí)行在HTTP請(qǐng)求中指定的處理以便提供服務(wù)。[0025]網(wǎng)絡(luò)客戶端裝置300包括網(wǎng)絡(luò)服務(wù)客戶端320、330、340及350。網(wǎng)絡(luò)服務(wù)客戶端320、330、340及350包括例如:用于顯示接收到的超文本標(biāo)記語言(HTML)數(shù)據(jù)的網(wǎng)絡(luò)瀏覽器、用于在網(wǎng)絡(luò)服務(wù)的存儲(chǔ)單元中存儲(chǔ)數(shù)據(jù)或從網(wǎng)絡(luò)服務(wù)的存儲(chǔ)單元中獲取數(shù)據(jù)的WebDAV客戶端、用于利用網(wǎng)絡(luò)服務(wù)提供的打印服務(wù)而打印數(shù)據(jù)的WSD打印以及HTTP客戶端。各網(wǎng)絡(luò)服務(wù)客戶端320、330、340及350具有下述功能:利用HTTP與網(wǎng)絡(luò)服務(wù)通信、請(qǐng)求網(wǎng)絡(luò)服務(wù)執(zhí)行處理、接收所請(qǐng)求的處理的結(jié)果以及向用戶提供所接收到的結(jié)果。
[0026]為了請(qǐng)求網(wǎng)絡(luò)服務(wù)執(zhí)行處理,各網(wǎng)絡(luò)服務(wù)客戶端320、330、340及350利用網(wǎng)絡(luò)客戶端裝置300的通信單元310將HTTP請(qǐng)求發(fā)送給網(wǎng)絡(luò)服務(wù)器120。當(dāng)接收到所述請(qǐng)求后,網(wǎng)絡(luò)服務(wù)器120分析所述請(qǐng)求的HTTP報(bào)頭部分,并判斷所述請(qǐng)求是否對(duì)應(yīng)于網(wǎng)絡(luò)服務(wù)140、150、160及170所注冊(cè)的任一擴(kuò)展判斷條件。如果網(wǎng)絡(luò)服務(wù)器120判定所述請(qǐng)求對(duì)應(yīng)于所注冊(cè)的任一擴(kuò)展判斷條件,那么網(wǎng)絡(luò)服務(wù)器120就執(zhí)行用于處理相應(yīng)網(wǎng)絡(luò)服務(wù)的功能。當(dāng)網(wǎng)絡(luò)服務(wù)器120執(zhí)行用于處理網(wǎng)絡(luò)服務(wù)的功能時(shí),在必要時(shí)所述網(wǎng)絡(luò)服務(wù)根據(jù)HTTP運(yùn)行或所接收到的數(shù)據(jù)的HTTP主體部分而執(zhí)行所請(qǐng)求的處理,從而提供所述服務(wù)。
[0027]如圖2所示,網(wǎng)絡(luò)服務(wù)器裝置100包括只讀存儲(chǔ)器(ROM) 102和硬盤驅(qū)動(dòng)器(HDD) 103。網(wǎng)絡(luò)服務(wù)器裝置100中的通信單元130、網(wǎng)絡(luò)服務(wù)器120以及網(wǎng)絡(luò)服務(wù)140、150、160及170被記錄在R0M102和HDD103中,并由中央處理單元(CPU) 101來執(zhí)行。
[0028]圖2的框圖示出了根據(jù)第一示例性實(shí)施方式的網(wǎng)絡(luò)服務(wù)器裝置100的硬件配置的示例。該圖示出了具有打印機(jī)功能的網(wǎng)絡(luò)服務(wù)器裝置100作為代表示例。也就是說,網(wǎng)絡(luò)服務(wù)器裝置100為打印機(jī)。網(wǎng)絡(luò)服務(wù)器裝置100可以是具有掃描器功能的多功能外圍設(shè)備(未示出)。具有存儲(chǔ)服務(wù)器功能的網(wǎng)絡(luò)服務(wù)器裝置100包括CPU101。
[0029]CPUlOl通過執(zhí)行存儲(chǔ)在R0M102或HDD103中的程序而全面控制與系統(tǒng)總線104相連接的各個(gè)單元。隨機(jī)存取存儲(chǔ)器(RAM) 111起到CPUlOl的主存儲(chǔ)器及工作區(qū)域的功能。具有存儲(chǔ)服務(wù)器功能的網(wǎng)絡(luò)服務(wù)器裝置100的控制單元105控制充當(dāng)打印引擎的打印機(jī)106 或 HDD103。
[0030]網(wǎng)絡(luò)服務(wù)器裝置100的CPUlOl通過執(zhí)行存儲(chǔ)在R0M102或HDD103中的程序而實(shí)現(xiàn)第一示例性實(shí)施方式的軟件配置。非易失性隨機(jī)存取存儲(chǔ)器(NVRAM) 107存儲(chǔ)用于限定網(wǎng)絡(luò)服務(wù)器裝置100的操作的各種設(shè)置值。面板控制單元108控制操作面板109顯示各種信息,并通過所述操作面板109接收來自用戶的指令。網(wǎng)絡(luò)接口控制單元110控制向/從網(wǎng)絡(luò)200發(fā)送/接收數(shù)據(jù)。
[0031]網(wǎng)絡(luò)客戶端裝置300也具有圖2所示的硬件配置。當(dāng)CPUlOl執(zhí)行存儲(chǔ)在R0M102或HDD103中的程序時(shí),圖1所示的各軟件均能運(yùn)行。在第一示例性實(shí)施方式中,假定網(wǎng)絡(luò)客戶端裝置300是信息處理裝置,例如一般個(gè)人計(jì)算機(jī)和包括智能手機(jī)的移動(dòng)終端,并且不具有諸如打印功能等圖像形成功能。因此,所述網(wǎng)絡(luò)客戶端裝置300是不包括打印機(jī)106或控制單元105的信息處理裝置。
[0032]圖3示出了網(wǎng)絡(luò)服務(wù)器120的內(nèi)部模塊。網(wǎng)絡(luò)服務(wù)器120包括網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121,用于從各個(gè)網(wǎng)絡(luò)服務(wù)140、150、160及170處接收網(wǎng)絡(luò)服務(wù)注冊(cè)請(qǐng)求。網(wǎng)絡(luò)服務(wù)注冊(cè)請(qǐng)求是用于在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)各個(gè)網(wǎng)絡(luò)服務(wù)140、150、160及170的請(qǐng)求。當(dāng)各個(gè)網(wǎng)絡(luò)服務(wù)140、150、160及170都被注冊(cè)后,所注冊(cè)的各個(gè)網(wǎng)絡(luò)服務(wù)140、150、160及170能夠執(zhí)行由網(wǎng)絡(luò)服務(wù)器120從網(wǎng)絡(luò)服務(wù)客戶端接收到的請(qǐng)求。網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121具有以下功能:在網(wǎng)絡(luò)服務(wù)管理表122中記錄擴(kuò)展判斷條件和用于調(diào)用各個(gè)網(wǎng)絡(luò)服務(wù)140、150、160及170的處理函數(shù)。即使已經(jīng)發(fā)送注冊(cè)請(qǐng)求的網(wǎng)絡(luò)服務(wù)140、150、160及170具有相同的URL,所述擴(kuò)展判斷條件也能被用來識(shí)別合適的網(wǎng)絡(luò)服務(wù)。
[0033]網(wǎng)絡(luò)服務(wù)管理表122的結(jié)構(gòu)如圖5A、5B、5C和所示。在第一示例性實(shí)施方式中將要描述的一個(gè)示例中,假定為各個(gè)端口號(hào)生成所述網(wǎng)絡(luò)服務(wù)管理表122,通過所述端口號(hào)來執(zhí)行網(wǎng)絡(luò)服務(wù)。例如,如果存在由傳輸控制協(xié)議(TCP)端口號(hào)80以及TCP端口號(hào)88所提供的網(wǎng)絡(luò)服務(wù)的話,那么就生成兩個(gè)網(wǎng)絡(luò)服務(wù)管理表122,其中一個(gè)用于TCP端口號(hào)80而另一個(gè)用于TCP端口號(hào)88。為各個(gè)端口號(hào)生成網(wǎng)絡(luò)服務(wù)管理表122可以允許網(wǎng)絡(luò)服務(wù)器120以更快的方式找到合適的網(wǎng)絡(luò)服務(wù)。
[0034]請(qǐng)求(HTTP報(bào)頭)接收單元123具有以下功能:通過網(wǎng)絡(luò)接收發(fā)送給網(wǎng)絡(luò)服務(wù)器120的請(qǐng)求的HTTP報(bào)頭部分。網(wǎng)絡(luò)服務(wù)判斷單元124具有以下功能:分析由請(qǐng)求(HTTP報(bào)頭)接收單元123接收到的HTTP報(bào)頭信息,并根據(jù)在網(wǎng)絡(luò)服務(wù)管理表122中注冊(cè)的相應(yīng)擴(kuò)展判斷條件而識(shí)別出合適的網(wǎng)絡(luò)服務(wù)。
[0035]網(wǎng)絡(luò)服務(wù)執(zhí)行單元125執(zhí)行由網(wǎng)絡(luò)服務(wù)判斷單元124識(shí)別出的網(wǎng)絡(luò)服務(wù)。網(wǎng)絡(luò)服務(wù)執(zhí)行單元125具有能夠與所識(shí)別出的網(wǎng)絡(luò)服務(wù)進(jìn)行HTTP通信的功能。例如,這種HTTP通信功能能夠接收HTTP主體部分,以及根據(jù)HTTP協(xié)議發(fā)送HTTP響應(yīng)。
[0036]圖4示出了網(wǎng)絡(luò)服務(wù)140的內(nèi)部模塊。網(wǎng)絡(luò)服務(wù)注冊(cè)單元141判斷當(dāng)啟動(dòng)網(wǎng)絡(luò)服務(wù)140時(shí)所述網(wǎng)絡(luò)服務(wù)140是有效還是無效。如果所述網(wǎng)絡(luò)服務(wù)140有效,那么網(wǎng)絡(luò)服務(wù)注冊(cè)單元141就具有以下功能:請(qǐng)求網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121將URL、網(wǎng)絡(luò)服務(wù)140的擴(kuò)展判斷條件以及用于網(wǎng)絡(luò)服務(wù)140的處理函數(shù)進(jìn)行注冊(cè)。網(wǎng)絡(luò)服務(wù)處理單元142具有執(zhí)行網(wǎng)絡(luò)服務(wù)140的處理的功能。具體地,網(wǎng)絡(luò)服務(wù)處理單元142執(zhí)行由網(wǎng)絡(luò)服務(wù)執(zhí)行單元125調(diào)用的服務(wù)處理函數(shù)。網(wǎng)絡(luò)服務(wù)處理單元142具有執(zhí)行處理的功能,所述處理對(duì)各個(gè)網(wǎng)絡(luò)服務(wù)來說是獨(dú)一無二的。
[0037]圖6的流程圖示出了由網(wǎng)絡(luò)服務(wù)注冊(cè)單元141執(zhí)行的特定處理。網(wǎng)絡(luò)服務(wù)注冊(cè)單元141被存儲(chǔ)在RAM111、R0M102及HDD103中的任意一個(gè)存儲(chǔ)單元中,并由CPUlOl執(zhí)行。在步驟SlOO中,在啟動(dòng)網(wǎng)絡(luò)服務(wù)140時(shí),網(wǎng)絡(luò)服務(wù)注冊(cè)單元141確認(rèn)所述網(wǎng)絡(luò)服務(wù)140的設(shè)置,并判斷所述網(wǎng)絡(luò)服務(wù)140是否有效。
[0038]如果網(wǎng)絡(luò)服務(wù)140無效(在步驟SlOO中為“無效”),那么就不需要將網(wǎng)絡(luò)服務(wù)信息注冊(cè)到網(wǎng)絡(luò)服務(wù)器120中。因此,結(jié)束處理,而并不在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)網(wǎng)絡(luò)服務(wù)信息。如果網(wǎng)絡(luò)服務(wù)140有效(在步驟SlOO中為“有效”),那么處理就推進(jìn)至步驟S101。在步驟SlOl中,網(wǎng)絡(luò)服務(wù)注冊(cè)單元141確認(rèn)將被注冊(cè)在網(wǎng)絡(luò)服務(wù)器120中的網(wǎng)絡(luò)服務(wù)執(zhí)行判斷條件。更具體地,網(wǎng)絡(luò)服務(wù)注冊(cè)單元141判斷是僅注冊(cè)URL信息還是除URL信息外還要注冊(cè)擴(kuò)展判斷條件。擴(kuò)展判斷條件可以是網(wǎng)絡(luò)服務(wù)140特有的屬性,或者可以由管理員為網(wǎng)絡(luò)服務(wù)140設(shè)置。
[0039]如果僅注冊(cè)URL信息(在步驟SlOl中為“是”),那么在步驟S102中,網(wǎng)絡(luò)服務(wù)注冊(cè)單元141就注冊(cè)URL信息和網(wǎng)絡(luò)服務(wù)處理函數(shù)。如果除了 URL信息外還有擴(kuò)展判斷條件(在步驟SlOl中為“否”),那么處理就推進(jìn)至步驟S103。在步驟S103中,網(wǎng)絡(luò)服務(wù)注冊(cè)單元141在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)URL信息、相應(yīng)的擴(kuò)展判斷條件以及網(wǎng)絡(luò)服務(wù)處理函數(shù)。
[0040]這里將補(bǔ)充描述將被注冊(cè)在網(wǎng)絡(luò)服務(wù)器120中的上述URL信息。通常,URL表示由請(qǐng)求注解(RFC,Request For Comments) 1738限定的格式。然而,將被注冊(cè)在網(wǎng)絡(luò)服務(wù)器120中的URL信息代表協(xié)議(HTTP/HTTPS)、提供服務(wù)的TCP端口號(hào)以及URL路徑信息,而不是由RFC1738限定的信息。
[0041]此外,任何在HTTP報(bào)頭中指定的信息都可以用作擴(kuò)展判斷條件。例如,擴(kuò)展判斷條件可以是HTTP操作、HTTP報(bào)頭的內(nèi)容類型或用戶代理、或者由RFC822定義的以“x_”開頭并且作為應(yīng)用程序的擴(kuò)展的HTTP擴(kuò)展報(bào)頭信息。如果網(wǎng)絡(luò)服務(wù)140在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)擴(kuò)展判斷條件,那么即使URL信息相匹配,網(wǎng)絡(luò)服務(wù)器120也不利用網(wǎng)絡(luò)服務(wù)140的處理函數(shù)調(diào)用網(wǎng)絡(luò)服務(wù)140,除非URL信息和擴(kuò)展判斷條件都匹配?;蛘撸梢曰趦蓚€(gè)或更多的擴(kuò)展判斷條件而執(zhí)行判斷。例如,如果判定具有相同URL路徑的另一個(gè)網(wǎng)絡(luò)服務(wù)也具有相同的HTTP操作,那么就基于內(nèi)容類型做進(jìn)一步的判斷。因此,除了 URL之外,網(wǎng)絡(luò)服務(wù)140還可以在網(wǎng)絡(luò)服務(wù)器120中注冊(cè)擴(kuò)展判斷條件。
[0042]接下來將描述網(wǎng)絡(luò)服務(wù)器120中的網(wǎng)絡(luò)服務(wù)注冊(cè)處理。
[0043]網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121被存儲(chǔ)在RAM111、R0M102和HDD103中的任一存儲(chǔ)單元中,并由CPUlOl執(zhí)行。這里將參照?qǐng)D5A、5B、5C及描述由網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121執(zhí)行的如圖7所示的處理流程。
[0044]首先將描述圖5A。圖5A示出了以下狀態(tài)。
[0045]在圖5A所示的網(wǎng)絡(luò)服務(wù)管理表122中,遠(yuǎn)程Π服務(wù)150和WebDAV服務(wù)170被注冊(cè)為具有TCP端口號(hào)80的服務(wù)。僅以“/”作為URL路徑來注冊(cè)遠(yuǎn)程Π服務(wù)150。僅以“/share”作為URL路徑來注冊(cè)WebDAV服務(wù)170。盡管網(wǎng)絡(luò)服務(wù)器120提供了 HTTP操作字段用于注冊(cè)擴(kuò)展判斷條件,但是遠(yuǎn)程UI服務(wù)150和WebDAV服務(wù)170的字段都是空白。
[0046]以下將描述圖7所示的流程圖,在所述流程圖中,假定網(wǎng)絡(luò)服務(wù)管理表122是如圖5A所示,并且網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121接收到注冊(cè)HTTP網(wǎng)絡(luò)服務(wù)140 (IPP服務(wù))的請(qǐng)求。這里也假定HTTP網(wǎng)絡(luò)服務(wù)140通過指定TCP端口號(hào)為“80”、URL路徑為“/”、以及作為擴(kuò)展判斷條件之一的HTTP操作為“POST”而發(fā)送了注冊(cè)請(qǐng)求。
[0047]在步驟S200中,當(dāng)從網(wǎng)絡(luò)服務(wù)140處接收到網(wǎng)絡(luò)服務(wù)注冊(cè)請(qǐng)求后,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121確認(rèn)由網(wǎng)絡(luò)服務(wù)注冊(cè)單元141指定的URL信息的TCP端口號(hào)。
[0048]在步驟S201中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121判斷網(wǎng)絡(luò)服務(wù)管理表122中是否存在與指定的TCP端口號(hào)相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表。如果不存在與指定的TCP端口號(hào)相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表(在步驟S201中為“否”),那么在步驟S206中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121就為指定的TCP端口號(hào)生成新的網(wǎng)絡(luò)服務(wù)管理表。接下來,在步驟S207中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121在生成的網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)指定的服務(wù)名稱、URL路徑以及擴(kuò)展判斷條件。然后結(jié)束處理。如果除了 URL信息以外,網(wǎng)絡(luò)服務(wù)140沒有指定擴(kuò)展判斷條件,那么擴(kuò)展判斷條件的字段就是空白并被忽略。如果在擴(kuò)展判斷條件為空白字段的狀態(tài)下而注冊(cè)了一個(gè)網(wǎng)絡(luò)服務(wù),那么當(dāng)URL路徑相匹配時(shí),所述網(wǎng)絡(luò)服務(wù)就被識(shí)別為要對(duì)所發(fā)送的請(qǐng)求進(jìn)行處理的網(wǎng)絡(luò)服務(wù)。所述配置使得即使在擴(kuò)展判斷條件為空白字段的狀態(tài)下注冊(cè)了網(wǎng)絡(luò)服務(wù),并且包含在請(qǐng)求中的擴(kuò)展判斷條件與注冊(cè)的擴(kuò)展判斷條件不匹配,也總是能夠執(zhí)行任一個(gè)注冊(cè)的網(wǎng)絡(luò)服務(wù)。
[0049]這里,HTTP網(wǎng)絡(luò)服務(wù)(IPP服務(wù)140)指定了 TCP端口號(hào)80。如果網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121判定在網(wǎng)絡(luò)服務(wù)管理表122中存在與TCP端口號(hào)80相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表(在步驟S201中為“是”),那么就檢索圖5A中所示的網(wǎng)絡(luò)服務(wù)管理表122。在找到TCP端口號(hào)80的網(wǎng)絡(luò)服務(wù)管理表122之后,接下來在步驟S202中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121判斷在該網(wǎng)絡(luò)服務(wù)管理表中是否注冊(cè)了與網(wǎng)絡(luò)服務(wù)注冊(cè)請(qǐng)求相同的URL路徑。也就是說,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121確認(rèn)是否注冊(cè)了具有相同URL路徑的網(wǎng)絡(luò)服務(wù)。如果沒有注冊(cè)具有相同URL路徑的網(wǎng)絡(luò)服務(wù)(在步驟S202中為“否”),那么在步驟S207中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121就在網(wǎng)絡(luò)服務(wù)管理表122的末尾注冊(cè)這次將要被注冊(cè)的新服務(wù)的信息。這里,由于IPP服務(wù)140具有URL路徑“/”,因此所述URL路徑與圖5A中所示的網(wǎng)絡(luò)服務(wù)管理表122的“Nol”中注冊(cè)的遠(yuǎn)程Π的URL路徑相同。因此,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121判定已經(jīng)注冊(cè)了與網(wǎng)絡(luò)服務(wù)注冊(cè)請(qǐng)求相同的URL路徑(在步驟S202中為“是”),然后處理推進(jìn)至步驟S203。
[0050]如果注冊(cè)了相同的URL路徑(在步驟S202中為“是”),那么在步驟S203中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121利用擴(kuò)展判斷條件執(zhí)行比較。在本示例中,由于網(wǎng)絡(luò)服務(wù)器120中提供了 HTTP操作作為擴(kuò)展判斷條件,因此網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121就將遠(yuǎn)程Π服務(wù)150的HTTP操作與將由IPP服務(wù)140注冊(cè)的HTTP操作進(jìn)行比較。如圖5A所示,在遠(yuǎn)程Π服務(wù)150中沒有指定HTTP操作。另一方面,IPP服務(wù)140指定了 “POST”。上述比較的結(jié)果是,IPP服務(wù)140與遠(yuǎn)程Π服務(wù)150的擴(kuò)展判斷條件彼此不匹配(在步驟S203中為“否”),因此就允許注冊(cè)IPP服務(wù)140。按照這樣的方式,如果網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121判定接收到的擴(kuò)展判斷條件與在網(wǎng)絡(luò)服務(wù)管理表122中對(duì)應(yīng)于相同的URL而注冊(cè)的擴(kuò)展判斷條件不匹配的話,那么就在網(wǎng)絡(luò)服務(wù)管理表122中注冊(cè)該網(wǎng)絡(luò)服務(wù)140。當(dāng)在網(wǎng)絡(luò)服務(wù)管理表122中注冊(cè)了該網(wǎng)絡(luò)服務(wù)140時(shí),如圖5B所示,URL、相應(yīng)的擴(kuò)展判斷條件、網(wǎng)絡(luò)服務(wù)處理函數(shù)以及網(wǎng)絡(luò)服務(wù)名稱就相互關(guān)聯(lián)起來。如果擴(kuò)展判斷條件的比較結(jié)果是:IPP服務(wù)140和遠(yuǎn)程UI服務(wù)150的擴(kuò)展判斷條件相互匹配(在步驟S203中為“是”),那么處理就推進(jìn)至步驟S204。在步驟S204中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121不注冊(cè)該網(wǎng)絡(luò)服務(wù)140,然后處理結(jié)束。
[0051]接下來將描述下述處理:確認(rèn)各網(wǎng)絡(luò)服務(wù)的注冊(cè)優(yōu)先級(jí)、然后在網(wǎng)絡(luò)服務(wù)管理表122中實(shí)際注冊(cè)該網(wǎng)絡(luò)服務(wù)140。在步驟S205中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121將這次將被新注冊(cè)的網(wǎng)絡(luò)服務(wù)140的擴(kuò)展判斷條件的數(shù)量與具有相同URL路徑的已注冊(cè)網(wǎng)絡(luò)服務(wù)150的擴(kuò)展判斷條件的數(shù)量進(jìn)行比較。進(jìn)行上述比較是因?yàn)?當(dāng)網(wǎng)絡(luò)服務(wù)判斷單元124檢索與請(qǐng)求的擴(kuò)展判斷條件相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)時(shí),所述網(wǎng)絡(luò)服務(wù)判斷單元124按照注冊(cè)編號(hào)的升序順序來確認(rèn)網(wǎng)絡(luò)服務(wù)管理表122中的網(wǎng)絡(luò)服務(wù),以判斷是否存在與所述請(qǐng)求相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)。因此,與具有相對(duì)較寬松條件的網(wǎng)絡(luò)服務(wù)相比,具有較嚴(yán)格條件的網(wǎng)絡(luò)服務(wù)需要以較小的注冊(cè)編號(hào)注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表122中。否則的話,可能首先檢索到的是具有相對(duì)較寬松條件的網(wǎng)絡(luò)服務(wù),因?yàn)榫哂邢鄬?duì)較寬松條件的網(wǎng)絡(luò)服務(wù)的擴(kuò)展判斷條件的數(shù)量少于具有較嚴(yán)格條件的網(wǎng)絡(luò)服務(wù)的擴(kuò)展判斷條件的數(shù)量。這樣,由于具有較嚴(yán)格條件的網(wǎng)絡(luò)服務(wù)的擴(kuò)展判斷條件的數(shù)量較大,可能會(huì)導(dǎo)致所述具有較嚴(yán)格條件的網(wǎng)絡(luò)服務(wù)未被檢索到。
[0052]基于上述比較,向IPP服務(wù)140設(shè)置了一個(gè)擴(kuò)展判斷條件,而未向遠(yuǎn)程Π服務(wù)150設(shè)置擴(kuò)展判斷條件。在步驟S209中,由于IPP服務(wù)140需要被賦予比遠(yuǎn)程UI服務(wù)150更高的檢索優(yōu)先級(jí),因此所述IPP服務(wù)140被插入,并被注冊(cè)在注冊(cè)編號(hào)為“Nol”的位置。結(jié)果,遠(yuǎn)程Π服務(wù)150和WebDAV服務(wù)170的注冊(cè)編號(hào)就從圖5A所示的表中的注冊(cè)編號(hào)變?yōu)閳D5B所示的表中的注冊(cè)編號(hào)。如果將被新注冊(cè)的網(wǎng)絡(luò)服務(wù)140的擴(kuò)展判斷條件的數(shù)量少于或等于已注冊(cè)的網(wǎng)絡(luò)服務(wù)150的擴(kuò)展判斷條件的數(shù)量(在步驟S205中為“否”),那么處理就推進(jìn)至步驟S208。在步驟S208中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121以緊跟著具有相同URL的網(wǎng)絡(luò)服務(wù)150的注冊(cè)編號(hào)之后的注冊(cè)編號(hào)注冊(cè)網(wǎng)絡(luò)服務(wù)140。
[0053]這里將描述的示例中,網(wǎng)絡(luò)服務(wù)管理表122如圖5C中所示,且HTTP服務(wù)140將要被注冊(cè)。在圖5C中,WSD打印服務(wù)160、遠(yuǎn)程Π服務(wù)150以及WebDAV服務(wù)170在網(wǎng)絡(luò)服務(wù)管理表122中被注冊(cè)為具有TCP端口號(hào)80的服務(wù)。以“/”為URL路徑注冊(cè)WSD打印服務(wù)160與遠(yuǎn)程UI服務(wù)150,而僅以“/share”為URL路徑注冊(cè)WebDAV服務(wù)170。在圖5C所示的網(wǎng)絡(luò)服務(wù)管理表122中,網(wǎng)絡(luò)服務(wù)器120提供HTTP操作字段和內(nèi)容類型字段作為擴(kuò)展判斷條件。針對(duì)WSD打印服務(wù)160,叩031'”和“&--1化&丨丨011/80&?+11111”被分別指定為HTTP操作和內(nèi)容類型。針對(duì)遠(yuǎn)程UI服務(wù)150和WebDAV服務(wù)170,沒有指定擴(kuò)展判斷條件。
[0054]在這樣的狀態(tài)下,假定HTTP網(wǎng)絡(luò)服務(wù)(IPP服務(wù))140通過指定TCP端口號(hào)為“80”、URL路徑為“/”、HTTP操作為“POST”、以及內(nèi)容類型為“application/ipp”已經(jīng)發(fā)送了注冊(cè)請(qǐng)求。在這種情況下,在圖7所示的流程圖的步驟S205中,網(wǎng)絡(luò)服務(wù)注冊(cè)處理單元121對(duì)將被新注冊(cè)的網(wǎng)絡(luò)服務(wù)140的擴(kuò)展判斷條件的數(shù)量與具有相同URL路徑的已注冊(cè)網(wǎng)絡(luò)服務(wù)150和160的擴(kuò)展判斷條件的數(shù)量進(jìn)行比較。結(jié)果是,由于HTTP操作和內(nèi)容類型均被指定為IPP服務(wù)140和WSD打印服務(wù)160的擴(kuò)展判斷條件,因此其擴(kuò)展判斷條件的數(shù)量彼此相等。因此,IPP服務(wù)140被以緊跟著WSD打印服務(wù)160的注冊(cè)編號(hào)之后的注冊(cè)編號(hào)而注冊(cè),從而網(wǎng)絡(luò)服務(wù)管理表122被更新為如圖中所示。
[0055]最后,將參照?qǐng)D8描述由網(wǎng)絡(luò)服務(wù)判斷單元124執(zhí)行的處理。網(wǎng)絡(luò)服務(wù)判斷單元124被存儲(chǔ)在RAM111、R0M102以及HDD103中的任一個(gè)存儲(chǔ)單元中,并由CPUlOl來執(zhí)行。網(wǎng)絡(luò)服務(wù)判斷單元124具有向各個(gè)網(wǎng)絡(luò)服務(wù)分配請(qǐng)求的功能。
[0056]在步驟S300中,在 接收到對(duì)網(wǎng)絡(luò)服務(wù)的請(qǐng)求后,請(qǐng)求接收單元123就請(qǐng)求網(wǎng)絡(luò)服務(wù)判斷單元124來判斷所述網(wǎng)絡(luò)服務(wù)。網(wǎng)絡(luò)服務(wù)判斷單元124從請(qǐng)求接收單元123處獲取接收到HTTP請(qǐng)求的接收TCP端口號(hào),并獲取所接收到的請(qǐng)求的HTTP報(bào)頭信息。網(wǎng)絡(luò)服務(wù)判斷單元124分析所述HTTP報(bào)頭信息。
[0057]在步驟S301中,網(wǎng)絡(luò)服務(wù)判斷單元124確認(rèn)在網(wǎng)絡(luò)服務(wù)管理表122中是否存在與接收的TCP端口號(hào)相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表。如果不存在與所述TCP端口號(hào)相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表(在步驟S301中為“否”),那么處理就推進(jìn)至步驟S307。在步驟S307中,網(wǎng)絡(luò)服務(wù)判斷單元124判定相應(yīng)的網(wǎng)絡(luò)服務(wù)不存在。另一方面,如果存在與接收的TCP端口號(hào)相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)管理表(在步驟S301中為“是”),那么處理就推進(jìn)至步驟S302。在步驟S302中,網(wǎng)絡(luò)服務(wù)判斷單元124將服務(wù)檢索開始位置設(shè)置為檢測(cè)到的網(wǎng)絡(luò)服務(wù)管理表中的注冊(cè)編號(hào)的頂端處(即:注冊(cè)編號(hào)“Nol”)。
[0058]在步驟S303中,網(wǎng)絡(luò)服務(wù)判斷單元124從所選擇的網(wǎng)絡(luò)服務(wù)管理表中的檢索開始位置處檢索與接收到的HTTP請(qǐng)求具有相同URL路徑的任意一個(gè)己注冊(cè)服務(wù)。如果不存在具有相同URL路徑的己注冊(cè)服務(wù)(在步驟S303中為“否”),那么接下來在步驟S307中,網(wǎng)絡(luò)服務(wù)判斷單元124就判定沒有網(wǎng)絡(luò)服務(wù)能處理所述請(qǐng)求。接下來,處理結(jié)束。如果網(wǎng)絡(luò)服務(wù)判斷單元124檢測(cè)到具有相同URL路徑的己注冊(cè)服務(wù)(在步驟S303中為“是”),那么處理就推進(jìn)至步驟S304。在步驟S304中,網(wǎng)絡(luò)服務(wù)判斷單元124確認(rèn)檢測(cè)到的網(wǎng)絡(luò)服務(wù)的擴(kuò)展判斷條件是否與同所述請(qǐng)求一起被發(fā)送的擴(kuò)展判斷條件相匹配。如果這些擴(kuò)展判斷條件彼此不匹配的話(在步驟S304中為“否”),那么處理就推進(jìn)至步驟S305。在步驟S305中,網(wǎng)絡(luò)服務(wù)判斷單元124在網(wǎng)絡(luò)服務(wù)管理表122中將檢索開始位置設(shè)置為下述網(wǎng)絡(luò)服務(wù)的位置:該網(wǎng)絡(luò)服務(wù)的注冊(cè)編號(hào)為緊挨著這次被判定為不匹配的網(wǎng)絡(luò)服務(wù)的注冊(cè)編號(hào)之后的注冊(cè)編號(hào)。然后,處理返回至步驟S303和S304,以便網(wǎng)絡(luò)服務(wù)判斷單元124繼續(xù)檢索具有相同URL路徑和相匹配的擴(kuò)展判斷條件的網(wǎng)絡(luò)服務(wù)。如果網(wǎng)絡(luò)服務(wù)判斷單元124判定所述擴(kuò)展判斷條件與被發(fā)送的擴(kuò)展條件相匹配(在步驟S304中為“是”),那么接下來在步驟S306中,網(wǎng)絡(luò)服務(wù)判斷單元124就判定已經(jīng)找到與所述請(qǐng)求相對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)。
[0059]現(xiàn)在將參照?qǐng)D8中所示的流程圖描述由網(wǎng)絡(luò)服務(wù)判斷單元124執(zhí)行的處理的一個(gè)具體示例。在該處理中,網(wǎng)絡(luò)客戶端裝置300發(fā)送請(qǐng)求給網(wǎng)絡(luò)服務(wù)器120,并且網(wǎng)絡(luò)服務(wù)判斷單元124指定相應(yīng)的網(wǎng)絡(luò)服務(wù)。這里假定網(wǎng)絡(luò)服務(wù)管理表122為如圖5B所示。該處理中使用了圖1所示的系統(tǒng)配置以及圖9A、9B和9C中所示的對(duì)網(wǎng)絡(luò)服務(wù)的請(qǐng)求數(shù)據(jù)的示例。
[0060]為了讓用戶與網(wǎng)絡(luò)服務(wù)(遠(yuǎn)程Π服務(wù)150)相連接,用戶在網(wǎng)絡(luò)服務(wù)客戶端350(下文稱為網(wǎng)絡(luò)瀏覽器)的URL輸入字段中輸入遠(yuǎn)程Π服務(wù)150的URL信息。將要被輸入的URL信息是例如“http://172.24.29.162/”。該URL信息不一定要輸入在網(wǎng)絡(luò)瀏覽器350的輸入字段中??梢酝ㄟ^在網(wǎng)絡(luò)瀏覽器350中選擇被注冊(cè)為書簽的信息而輸入所述URL信息。信息“172.24.29.162”表示網(wǎng)絡(luò)服務(wù)器裝置100的IP地址?!癶ttp://”與IP地址的組合使得各個(gè)網(wǎng)絡(luò)服務(wù)客戶端320、330、340及350能夠訪問網(wǎng)絡(luò)服務(wù)器120。網(wǎng)絡(luò)瀏覽器350基于所輸入的URL信息而識(shí)別網(wǎng)絡(luò)服務(wù)器120,并發(fā)送在圖9A中示出的用于獲取HTML數(shù)據(jù)的HTTP請(qǐng)求。在這種情況下,HTTP請(qǐng)求只包括HTTP報(bào)頭,也就是說,HTTP主體沒有被包含在所述HTTP請(qǐng)求中。
[0061]當(dāng)接收到圖9A中示出的請(qǐng)求數(shù)據(jù)的HTTP報(bào)頭后,請(qǐng)求接收單元123請(qǐng)求網(wǎng)絡(luò)服務(wù)判斷單元124識(shí)別相應(yīng)的網(wǎng)絡(luò)服務(wù)。網(wǎng)絡(luò)服務(wù)判斷單元124基于圖8所示的網(wǎng)絡(luò)服務(wù)判斷處理而識(shí)別網(wǎng)絡(luò)服務(wù)。根據(jù)來自網(wǎng)絡(luò)瀏覽器350的請(qǐng)求(圖9A),URL路徑是“/”,且HTTP操作是“GET”。因此,作為檢索圖5B所示的網(wǎng)絡(luò)服務(wù)管理表122的結(jié)果,網(wǎng)絡(luò)服務(wù)判斷單元124判定該請(qǐng)求為對(duì)注冊(cè)編號(hào)為“No2”的遠(yuǎn)程UI服務(wù)150的處理請(qǐng)求。因此,執(zhí)行遠(yuǎn)程UI服務(wù)150,并將處理結(jié)果作為響應(yīng)提供給網(wǎng)絡(luò)瀏覽器350。網(wǎng)絡(luò)瀏覽器350從遠(yuǎn)程UI服務(wù)150處獲取作為處理結(jié)果的HTML文件,并顯示所接收到的HTML文件。
[0062]此外,在另一個(gè)即將描述的具體示例中,用戶要與IPP服務(wù)140相連接。IPP服務(wù)140是互聯(lián)網(wǎng)打印協(xié)議,由RFC定義版本1.0、1.1、2.0、2.1以及2.2。IPP定義了用于確認(rèn)打印機(jī)狀態(tài)或能力、發(fā)出打印指定文檔的指令以及確認(rèn)作業(yè)狀態(tài)的命令。這些命令被存儲(chǔ)在HTTP的主體部分。換句話說,利用HTTP報(bào)頭不能識(shí)別IPP的操作。
[0063]如果用戶使用IPP服務(wù)140來確認(rèn)打印機(jī)能力信息,那么用戶需要在IPP客戶端340中指定IPP服務(wù)140的URL??梢杂捎脩糁苯又付↖PP服務(wù)140的URL。也可以利用組播域名系統(tǒng)(mDNS)及服務(wù)定位協(xié)議(SLP)等檢索技術(shù),通過網(wǎng)絡(luò)檢索IPP服務(wù)140的URL?;跈z索結(jié)果,可以獲取IPP服務(wù)140的URL。
[0064]當(dāng)用戶檢索并獲得IPP服務(wù)140的URL信息或者直接在IPP客戶端340中輸入U(xiǎn)RL后,該用戶就與指定的URL相連接。這里假定URL是例如“http://172.24.29.162/”。該URL與上述遠(yuǎn)程UI服務(wù)150的URL相同。在該狀態(tài)下注冊(cè)網(wǎng)絡(luò)服務(wù)140會(huì)造成網(wǎng)絡(luò)服務(wù)140和遠(yuǎn)程UI服務(wù)150將以相同的URL被注冊(cè)。接下來,IPP客戶端340發(fā)送如圖9B所示的包括HTTP報(bào)頭信息以及HTTP主體部分的請(qǐng)求,所述HTTP主體部分包括表明對(duì)IPP服務(wù)140的請(qǐng)求的細(xì)節(jié)的命令。
[0065]當(dāng)接收到圖9B所示的請(qǐng)求數(shù)據(jù)的HTTP報(bào)頭后,請(qǐng)求接收單元123請(qǐng)求網(wǎng)絡(luò)服務(wù)判斷單元124識(shí)別相應(yīng)的網(wǎng)絡(luò)服務(wù)。網(wǎng)絡(luò)服務(wù)判斷單元124基于圖8所示的網(wǎng)絡(luò)服務(wù)判斷處理而識(shí)別網(wǎng)絡(luò)服務(wù)。根據(jù)來自網(wǎng)絡(luò)瀏覽器350的請(qǐng)求(圖9B),URL路徑是“/”,且HTTP操作是“POST”。因此,基于對(duì)圖5B所示的網(wǎng)絡(luò)服務(wù)管理表122的檢索,網(wǎng)絡(luò)服務(wù)判斷單元124判定該請(qǐng)求為對(duì)注冊(cè)編號(hào)為“Nol”的IPP服務(wù)140的處理請(qǐng)求。接下來執(zhí)行IPP服務(wù)140。IPP服務(wù)140通過接收包含在HTTP主體部分中的IPP請(qǐng)求數(shù)據(jù)而確認(rèn)所述請(qǐng)求的細(xì)節(jié)。
[0066]圖9C示出了圖9B中示出的IPP請(qǐng)求數(shù)據(jù)的數(shù)據(jù)格式。
[0067]IPP請(qǐng)求由RFC2910定義,且對(duì)IPP服務(wù)140的指令在“操作_id”字段中被指定。對(duì)IPP服務(wù)的指令是例如用于執(zhí)行打印操作的打印作業(yè)請(qǐng)求或者用于獲取打印機(jī)屬性的“獲得打印機(jī)屬性”請(qǐng)求。在“操作-1d”字段中指定的“0x0002”表示打印作業(yè)請(qǐng)求,而在“操作-1d”字段中指定的“OxOOOB”表示“獲得打印機(jī)屬性”請(qǐng)求。
[0068]當(dāng)接收到圖9C所示的格式的請(qǐng)求數(shù)據(jù)后,IPP服務(wù)140執(zhí)行由包含在“操作_id”字段中的命令所指定的指令。例如,如果所述指令是用戶獲取打印機(jī)屬性的“獲得打印機(jī)屬性”請(qǐng)求,那么IPP服務(wù)140就以打印機(jī)能力信息響應(yīng)IPP客戶端340。如果所述指令是打印作業(yè)請(qǐng)求,那么IPP服務(wù)140就接收包含在所述請(qǐng)求的數(shù)據(jù)字段中的打印數(shù)據(jù),并促使打印機(jī)106基于所述打印數(shù)據(jù)執(zhí)行打印。
[0069]當(dāng)IPP服務(wù)140完成圖9B所示的IPP請(qǐng)求數(shù)據(jù)所指定的處理后,所述IPP服務(wù)140就通過將對(duì)所請(qǐng)求的處理的響應(yīng)以按照IPP標(biāo)準(zhǔn)的格式存儲(chǔ)在HTTP主體部分,從而將所述響應(yīng)發(fā)送給IPP客戶端340。
[0070]IPP客戶端340從存儲(chǔ)在所接收到的響應(yīng)的HTTP主體部分中的數(shù)據(jù)獲取請(qǐng)求結(jié)果,并結(jié)束與IPP服務(wù)140的通信。
[0071]如上文所述,根據(jù)第一示例性實(shí)施方式,即使具有相同URL的多個(gè)網(wǎng)絡(luò)服務(wù)在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行,所述網(wǎng)絡(luò)服務(wù)器也能夠基于接收到的HTTP請(qǐng)求而識(shí)別出要調(diào)用哪個(gè)網(wǎng)絡(luò)服務(wù)。由于根據(jù)發(fā)送請(qǐng)求的各網(wǎng)絡(luò)服務(wù)客戶端不同所述HTTP請(qǐng)求可能會(huì)不同,因此網(wǎng)絡(luò)服務(wù)器能從具有相同URL的多個(gè)網(wǎng)絡(luò)服務(wù)中識(shí)別出所述網(wǎng)絡(luò)服務(wù)。因此,用戶只需要記住一個(gè)URL。這樣就能允許執(zhí)行各種各樣的網(wǎng)絡(luò)服務(wù),同時(shí)又能保持易用性。
[0072]下文將描述本發(fā)明的另一個(gè)示例性實(shí)施方式。上文描述的本發(fā)明的示例性實(shí)施方式是通過執(zhí)行處理實(shí)現(xiàn)的,在該處理中,通過網(wǎng)絡(luò)或各種存儲(chǔ)介質(zhì)向系統(tǒng)或裝置提供用于實(shí)施上述示例性實(shí)施方式的功能的軟件(程序),并且所述程序由所述系統(tǒng)或裝置中的計(jì)算機(jī)(或CPU、微處理單元(MPU))讀取并執(zhí)行。
[0073]因此,即使具有相同URL的多個(gè)網(wǎng)絡(luò)服務(wù)在一個(gè)網(wǎng)絡(luò)服務(wù)器上運(yùn)行,所述網(wǎng)絡(luò)服務(wù)器也能夠基于接收到的HTTP請(qǐng)求而識(shí)別出要調(diào)用哪個(gè)網(wǎng)絡(luò)服務(wù)。
[0074]雖然已經(jīng)結(jié)合示例性實(shí)施方式描述了本發(fā)明,應(yīng)當(dāng)認(rèn)識(shí)到,本發(fā)明并不局限于公開的示例性實(shí)施方式。下列權(quán)利要求的范圍應(yīng)當(dāng)適合最廣泛的解釋,以便囊括所有改動(dòng)、等同結(jié)構(gòu)和功能。
【權(quán)利要求】
1.一種網(wǎng)絡(luò)服務(wù)器裝置,包括: 接收單元,被配置為從網(wǎng)絡(luò)服務(wù)接收注冊(cè)請(qǐng)求,其中,所述請(qǐng)求包括:用于識(shí)別所述網(wǎng)絡(luò)服務(wù)的統(tǒng)一資源定位符(URL)與擴(kuò)展判斷條件; 注冊(cè)單元,被配置為:如果與所收到的URL相同的URL已經(jīng)被注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表中,那么在判定所收到的擴(kuò)展判斷條件與注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中的擴(kuò)展判斷條件不同之后,所述注冊(cè)單元就將所收到的URL與所收到的擴(kuò)展判斷條件間的對(duì)應(yīng)以及用于調(diào)用所述網(wǎng)絡(luò)服務(wù)的函數(shù)注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中,所述對(duì)應(yīng)與所述函數(shù)彼此相關(guān)聯(lián)作為已經(jīng)發(fā)送所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)的信息;以及, 請(qǐng)求單元,被配置為:如果接收到請(qǐng)求,并且與包括在所述請(qǐng)求中的URL與擴(kuò)展判斷條件間的對(duì)應(yīng)相同的對(duì)應(yīng)被注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中,那么所述請(qǐng)求單元就利用與所述對(duì)應(yīng)相關(guān)聯(lián)而被注冊(cè)的函數(shù)來調(diào)用用于處理所述請(qǐng)求的網(wǎng)絡(luò)服務(wù)。
2.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)服務(wù)器裝置,其中,如果所述注冊(cè)單元判定所收到的擴(kuò)展判斷條件與在所述網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)的擴(kuò)展判斷條件相同的話,那么所述注冊(cè)單元就不注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)。
3.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)服務(wù)器裝置,其中,當(dāng)所述注冊(cè)單元注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)時(shí),所述注冊(cè)單元確定所述網(wǎng)絡(luò)服務(wù)的優(yōu)先級(jí),并根據(jù)所述優(yōu)先級(jí)將所述網(wǎng)絡(luò)服務(wù)注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表中。
4.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)服務(wù)器裝置,其中,當(dāng)所述注冊(cè)單元注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)時(shí),所述注冊(cè)單元將對(duì)應(yīng)于與所收到的在網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)的URL相同的URL的已注冊(cè)擴(kuò)展判斷條件的數(shù)量與所收到的擴(kuò)展判斷條件的數(shù)量進(jìn)行比較,并且如果所收到的擴(kuò)展判斷條件的數(shù)量較大,那么所述注冊(cè)單元就以較高的優(yōu)先級(jí)在所述網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)。
5.根據(jù)權(quán)利要求1所述的服務(wù)器裝置,其中,為各個(gè)端口號(hào)存儲(chǔ)網(wǎng)絡(luò)服務(wù)管理表,以及,其中, 所述注冊(cè)單元基于所收到的URL識(shí)別所述網(wǎng)絡(luò)服務(wù)的端口號(hào),并為所識(shí)別的端口號(hào)在網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)所述網(wǎng)絡(luò)服務(wù)。
6.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)服務(wù)器裝置,其中,已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)是互聯(lián)網(wǎng)打印協(xié)議(IPP)服務(wù)。
7.根據(jù)權(quán)利要求1所述的網(wǎng)絡(luò)服務(wù)器裝置,其中,所述網(wǎng)絡(luò)服務(wù)器裝置是打印機(jī)。
8.—種網(wǎng)絡(luò)服務(wù)器裝置的控制方法,所述方法包括: 從網(wǎng)絡(luò)服務(wù)接收注冊(cè)請(qǐng)求,其中,所述請(qǐng)求包括:用于識(shí)別所述網(wǎng)絡(luò)服務(wù)的URL與擴(kuò)展判斷條件; 如果與所收到的URL相同的URL已經(jīng)被注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表中,那么在判定所收到的擴(kuò)展判斷條件與注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中的擴(kuò)展判斷條件不同之后,就將所收到的URL與所 收到的擴(kuò)展判斷條件間的對(duì)應(yīng)以及用于調(diào)用所述網(wǎng)絡(luò)服務(wù)的函數(shù)注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中,所述對(duì)應(yīng)與所述函數(shù)彼此相關(guān)聯(lián)作為已經(jīng)發(fā)送所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)的信息;以及, 如果接收到請(qǐng)求,并且與包括在所述請(qǐng)求中的URL與擴(kuò)展判斷條件間的對(duì)應(yīng)相同的對(duì)應(yīng)被注冊(cè)在所述網(wǎng)絡(luò)服務(wù)管理表中,那么就利用與所述對(duì)應(yīng)相關(guān)聯(lián)而被注冊(cè)的函數(shù)來調(diào)用用于處理所述請(qǐng)求的網(wǎng)絡(luò)服務(wù)。
9.根據(jù)權(quán)利要求8所述的方法,還包括:如果所收到的擴(kuò)展判斷條件與在所述網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)的擴(kuò)展判斷條件相同的話,那么就不注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)。
10.根據(jù)權(quán)利要求8所述的方法,還包括:當(dāng)注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)時(shí),確定所述網(wǎng)絡(luò)服務(wù)的優(yōu)先級(jí),并根據(jù)所述優(yōu)先級(jí)將所述網(wǎng)絡(luò)服務(wù)注冊(cè)在網(wǎng)絡(luò)服務(wù)管理表中。
11.根據(jù)權(quán)利要求8所述的方法,還包括:當(dāng)注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)時(shí),將對(duì)應(yīng)于與所收到的在網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)的URL相同的URL的已注冊(cè)擴(kuò)展判斷條件的數(shù)量與所收到的擴(kuò)展判斷條件的數(shù)量進(jìn)行比較,并且如果所收到的擴(kuò)展判斷條件的數(shù)量較大,那么就以較高的優(yōu)先級(jí)在所述網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)。
12.根據(jù)權(quán)利要求8所述的方法,其中,為各個(gè)端口號(hào)存儲(chǔ)網(wǎng)絡(luò)服務(wù)管理表,以及,其中, 所述方法還包括:基于所收到的URL識(shí)別所述網(wǎng)絡(luò)服務(wù)的端口號(hào),并為所識(shí)別的端口號(hào)在網(wǎng)絡(luò)服務(wù)管理表中注冊(cè)所述網(wǎng)絡(luò)服務(wù)。
13.根據(jù)權(quán)利要求8所述的方法,其中,已經(jīng)發(fā)送了所述注冊(cè)請(qǐng)求的所述網(wǎng)絡(luò)服務(wù)是IPP服務(wù)。
14.根據(jù)權(quán)利要求8所述的方法,其中,所述網(wǎng)絡(luò)服務(wù)器裝置是打印機(jī)。
【文檔編號(hào)】H04L29/06GK103973764SQ201410028273
【公開日】2014年8月6日 申請(qǐng)日期:2014年1月20日 優(yōu)先權(quán)日:2013年1月28日
【發(fā)明者】?jī)?nèi)川慎一 申請(qǐng)人:佳能株式會(huì)社