第 18 章 個人入口網站的建立

32
18 18 第第第第第第第第第 第第第第第第第第第 18-1 18-1 第第第第第第第 第第第第第第第 18-2 18-2 第第第第第第第第第 第第第第第第第第第 18-3 18-3 第第第第第第第第第第 第第第第第第第第第第 18-4 Web 18-4 Web 第第第第第 第第第第第 18-5 Amazon 18-5 Amazon Web Web 第第 第第

Upload: uriel

Post on 15-Jan-2016

63 views

Category:

Documents


0 download

DESCRIPTION

第 18 章 個人入口網站的建立. 18-1 入口網站的基礎 18-2 建立網站的搜尋引擎 18-3 網頁組件的個人化功能 18-4 Web 服務的基礎 18-5 Amazon 的 Web 服務. 18-1 入口網站的基礎 - 說明. 入口網站( Portal Site )是 Internet 網路上的資源中心,它是進入其他網站的橋樑,通常入口網站是瀏覽程式設定的首頁,可以提供大量不同來源的資訊和服務。例如:搜尋引擎、新聞、股市行情、電子報、免費電子郵件和聊天室等。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 18 章  個人入口網站的建立

第第 1818 章 章 個人入口網站的建立個人入口網站的建立 18-118-1 入口網站的基礎入口網站的基礎 18-2 18-2 建立網站的搜尋引擎建立網站的搜尋引擎 18-3 18-3 網頁組件的個人化功能網頁組件的個人化功能 18-4 Web18-4 Web 服務的基礎服務的基礎 18-5 Amazon18-5 Amazon的的WebWeb 服務服務

Page 2: 第 18 章  個人入口網站的建立

18-118-1 入口網站的基礎入口網站的基礎 -- 說明說明 入口網站(入口網站( Portal SitePortal Site )是)是 InternetInternet 網路上的網路上的

資源中心,它是進入其他網站的橋樑,通常入口資源中心,它是進入其他網站的橋樑,通常入口網站是瀏覽程式設定的首頁,可以提供大量不同網站是瀏覽程式設定的首頁,可以提供大量不同來源的資訊和服務。例如:搜尋引擎、新聞、股來源的資訊和服務。例如:搜尋引擎、新聞、股市行情、電子報、免費電子郵件和聊天室等。市行情、電子報、免費電子郵件和聊天室等。

入口(入口( PortalPortal )在定義上本來並不包含個人化功)在定義上本來並不包含個人化功能,不過,現在的入口網站都有提供會員個人化能,不過,現在的入口網站都有提供會員個人化使用介面來存取各種服務和資訊,簡單的說,它使用介面來存取各種服務和資訊,簡單的說,它是一種客製化搜尋服務的資訊搜集網站。例如:是一種客製化搜尋服務的資訊搜集網站。例如:Yahoo!Yahoo! 、微軟、微軟 MSNMSN 、新浪網和、新浪網和 PC HOMEPC HOME 等網等網站。站。

Page 3: 第 18 章  個人入口網站的建立

18-118-1 入口網站的基礎入口網站的基礎 -- 圖例圖例

Page 4: 第 18 章  個人入口網站的建立

18-118-1 入口網站的基礎入口網站的基礎 -- 功能功能 目前的入口網站一般都希望提供的功能,如下所目前的入口網站一般都希望提供的功能,如下所

示:示:• 以使用者觀點,而非資訊提供者的觀點來提供資訊與以使用者觀點,而非資訊提供者的觀點來提供資訊與

服務。服務。• 以會員角色提供個人化資訊,例如:在特定時間提供以會員角色提供個人化資訊,例如:在特定時間提供

股票族會員所需的股票資訊。股票族會員所需的股票資訊。• 自動以使用者設定的需求來提供資訊與服務,例如:自動以使用者設定的需求來提供資訊與服務,例如:

自動每日顯示工作所需的相關新聞資訊。自動每日顯示工作所需的相關新聞資訊。• 提供介面可以讓使用者自行選擇有興趣內容、版面和提供介面可以讓使用者自行選擇有興趣內容、版面和

色彩。色彩。• 提供單一登入服務,只需登入一次,就可以使用入口提供單一登入服務,只需登入一次,就可以使用入口

網站所提供的資訊與服務。網站所提供的資訊與服務。

Page 5: 第 18 章  個人入口網站的建立

18-2 18-2 建立網站的搜尋引擎建立網站的搜尋引擎 18-2-1 18-2-1 搜尋引擎的種類搜尋引擎的種類 18-2-2 18-2-2 網址搜尋引擎網址搜尋引擎 18-2-3 System.IO18-2-3 System.IO 的全文檢索搜尋的全文檢索搜尋 18-2-4 18-2-4 建立建立 GoogleGoogle 搜尋的搜尋的 WebWeb 使用者使用者

控制項控制項

Page 6: 第 18 章  個人入口網站的建立

18-2-1 18-2-1 搜尋引擎的種類搜尋引擎的種類 -- 網址搜網址搜尋引擎尋引擎

在入口網站都會提供搜尋引擎來搜尋符合在入口網站都會提供搜尋引擎來搜尋符合條件的網站或網頁。條件的網站或網頁。

網址搜尋是找尋指定關鍵字的相關網站,網址搜尋是找尋指定關鍵字的相關網站,其目的是透過搜尋引擎快速找出有興趣或其目的是透過搜尋引擎快速找出有興趣或所需資訊的網址,在實作上,只需使用資所需資訊的網址,在實作上,只需使用資料庫儲存網站和相關資訊,在輸入搜尋關料庫儲存網站和相關資訊,在輸入搜尋關鍵字後,就可以找出符合條件的網址清單。鍵字後,就可以找出符合條件的網址清單。

Page 7: 第 18 章  個人入口網站的建立

18-2-1 18-2-1 搜尋引擎的種類搜尋引擎的種類 -- 網站內容網站內容的全文檢索搜尋的全文檢索搜尋

全文檢索搜尋是針對目前網站內容進行搜全文檢索搜尋是針對目前網站內容進行搜尋,因為網站提供的資訊太多,就算透過尋,因為網站提供的資訊太多,就算透過超連結也無法快速或完整找到所需的資料,超連結也無法快速或完整找到所需的資料,此時,透過全文檢索功能就可以幫助使用此時,透過全文檢索功能就可以幫助使用者完整且快速找到所需的資訊。者完整且快速找到所需的資訊。

在實作上,全文檢索搜尋通常都是使用作在實作上,全文檢索搜尋通常都是使用作業系統提供的索引服務(業系統提供的索引服務( Indexing Indexing ServiceService ),在建立好索引資料庫後,就可),在建立好索引資料庫後,就可以建立網站內容的全文檢索搜尋。以建立網站內容的全文檢索搜尋。

Page 8: 第 18 章  個人入口網站的建立

18-2-2 18-2-2 網址搜尋引擎網址搜尋引擎 -- 說明說明 在本節的網址搜尋引擎是功能十分陽春的在本節的網址搜尋引擎是功能十分陽春的

搜尋引擎,主要目的是說明資料表的搜尋引擎,主要目的是說明資料表的 SQLSQL查詢技巧,也就是如何在資料表記錄欄位查詢技巧,也就是如何在資料表記錄欄位執行欄位資料的全文檢索搜尋。執行欄位資料的全文檢索搜尋。

Page 9: 第 18 章  個人入口網站的建立

18-2-2 18-2-2 網址搜尋引擎網址搜尋引擎 -WebSearch-WebSearch資料表資料表

在在 AccessAccess 資料庫資料庫【【WebSearch.mdbWebSearch.mdb 】】擁有擁有 WebSearchWebSearch 資料表,它是用來儲存資料表,它是用來儲存網站的相關資訊,如下表所示:網站的相關資訊,如下表所示:欄位名稱 資料類型 大小 說明SiteID 自動編號 N/A 網站編號SiteName 文字 50 網站名稱URL 文字 100 網站 URL網址

Description 備忘 N/A 網站說明Keywords 文字 100 網站搜尋的關鍵字

Page 10: 第 18 章  個人入口網站的建立

18-2-2 18-2-2 網址搜尋引擎網址搜尋引擎 -SQL-SQL 指令指令 在在 ASP.NETASP.NET 程式可以建立程式可以建立 SQLSQL 查詢指令搜尋所查詢指令搜尋所

需的記錄資料,如下所示:需的記錄資料,如下所示:strSQL = "SELECT * From WebSearch "strSQL = "SELECT * From WebSearch "

strSQL &= "WHERE SiteName LIKE '%" & keyword strSQL &= "WHERE SiteName LIKE '%" & keyword

strSQL &= "%' OR URL LIKE '%" & keywordstrSQL &= "%' OR URL LIKE '%" & keyword

strSQL &= "%' OR Description LIKE '%" strSQL &= "%' OR Description LIKE '%"

strSQL &= keyword & "%' OR Keywords LIKE '%" strSQL &= keyword & "%' OR Keywords LIKE '%"

strSQL &= keyword & "%'"strSQL &= keyword & "%'" 上述程式碼建立上述程式碼建立 SQLSQL 指令字串,指令使用指令字串,指令使用 LIKELIKE

運算子查詢所有文字內容欄位,換句話說,它就運算子查詢所有文字內容欄位,換句話說,它就是資料表記錄欄位的全文檢索搜尋。是資料表記錄欄位的全文檢索搜尋。

Page 11: 第 18 章  個人入口網站的建立

18-2-3 System.IO18-2-3 System.IO 的全文檢索搜尋的全文檢索搜尋 --說明說明

雖然全文檢索搜尋都是使用作業系統提供雖然全文檢索搜尋都是使用作業系統提供的索引服務,不過,在的索引服務,不過,在 ASP.NETASP.NET 程式只需程式只需使用使用 System.IOSystem.IO 名稱空間的檔案物件,我名稱空間的檔案物件,我們一樣可以撰寫遞迴版本的全文檢索搜尋們一樣可以撰寫遞迴版本的全文檢索搜尋程序,快速搜尋網站內容。程序,快速搜尋網站內容。

Page 12: 第 18 章  個人入口網站的建立

18-2-3 System.IO18-2-3 System.IO 的全文檢索搜尋的全文檢索搜尋 --遞迴函數遞迴函數

ASP.NETASP.NET 的遞迴函數以本書來說,就是的遞迴函數以本書來說,就是 Visual Visual BasicBasic 的遞迴函數,它是函數自己呼叫自己的程的遞迴函數,它是函數自己呼叫自己的程式設計技巧,使用遞迴方式建立的函數和程序,式設計技巧,使用遞迴方式建立的函數和程序,可以有效減少程式碼長度,讓程式碼看起來更簡可以有效減少程式碼長度,讓程式碼看起來更簡潔,但是功能上可是一點都不會縮水。潔,但是功能上可是一點都不會縮水。

撰寫遞迴函數的注意事項,如下所示:撰寫遞迴函數的注意事項,如下所示:• 終止條件:能夠終止遞迴函數的執行,以資料夾或目終止條件:能夠終止遞迴函數的執行,以資料夾或目

錄範例來說,就是沒有子資料夾,只有檔案的資料夾。錄範例來說,就是沒有子資料夾,只有檔案的資料夾。• 遞迴函式會縮小範圍:遞迴函數處理範圍會愈來愈小,遞迴函式會縮小範圍:遞迴函數處理範圍會愈來愈小,直到終上條件為止,如此遞迴函數才能結束執行,以直到終上條件為止,如此遞迴函數才能結束執行,以資料夾來說,就是進入一層層子資料夾,其下的子樹資料夾來說,就是進入一層層子資料夾,其下的子樹將愈來愈小。將愈來愈小。

Page 13: 第 18 章  個人入口網站的建立

18-2-3 System.IO18-2-3 System.IO 的全文檢索搜尋的全文檢索搜尋 --System.IOSystem.IO 版的遞迴全文檢索搜尋版的遞迴全文檢索搜尋

System.IOSystem.IO 版的網站全文檢索搜尋是從版的網站全文檢索搜尋是從WebWeb伺伺服器的目錄開始,逐一搜尋所有檔案(使用的是服器的目錄開始,逐一搜尋所有檔案(使用的是實際資料夾),並且可以進入子目錄一層層往下實際資料夾),並且可以進入子目錄一層層往下搜尋來找出網頁內含關鍵字的檔案,其特點如下搜尋來找出網頁內含關鍵字的檔案,其特點如下所示:所示:• 搜尋所有子目錄:遞迴程序可以搜尋所有子目錄檔案,搜尋所有子目錄:遞迴程序可以搜尋所有子目錄檔案,

程式能夠指定查詢的檔案類型和搜尋數目。程式能夠指定查詢的檔案類型和搜尋數目。• 提供繼續查詢功能:如果找到指定數目檔案並沒有所提供繼續查詢功能:如果找到指定數目檔案並沒有所

需資料,能夠從上一次最後查詢位置,再往下繼續查需資料,能夠從上一次最後查詢位置,再往下繼續查詢,直到全部查完為止。詢,直到全部查完為止。

• 多條件查詢:多條件查詢: WebWeb 表單支援表單支援 ANDAND和和 OROR邏輯連結,邏輯連結,可以處理一個條件以上的全文檢索查詢。可以處理一個條件以上的全文檢索查詢。

• 指定查詢範圍:能夠指定全文檢索的目標為網站的虛指定查詢範圍:能夠指定全文檢索的目標為網站的虛擬目錄,不過搜尋時是以實際資料夾進行搜尋。擬目錄,不過搜尋時是以實際資料夾進行搜尋。

Page 14: 第 18 章  個人入口網站的建立

18-2-4 18-2-4 建立建立 GoogleGoogle 搜尋的搜尋的 WebWeb 使使用者控制項用者控制項 -- 控制項類別檔控制項類別檔

WebWeb 使用者控制項(使用者控制項( Web User ControlsWeb User Controls )是)是使用和使用和 WebWeb 表單相同程式設計技術所建立的自表單相同程式設計技術所建立的自定控制項,其副檔名是定控制項,其副檔名是 .ascx.ascx 。在控制項程式檔。在控制項程式檔案開頭,使用案開頭,使用 ControlControl 指引指令定義控制項的類指引指令定義控制項的類別名稱,如下所示:別名稱,如下所示:

<%@ Control Language="VB" <%@ Control Language="VB"

ClassName="Google" %>ClassName="Google" %> 程式碼指定程式碼指定 ClassNameClassName屬性的類別名稱。我們屬性的類別名稱。我們

可以使用可以使用 VWDVWD ,直接拖拉內建控制項來建立,直接拖拉內建控制項來建立WebWeb 使用者控制項,例如:使用者控制項,例如: GoogleGoogle 搜尋表單的搜尋表單的使用者控制項。使用者控制項。

Page 15: 第 18 章  個人入口網站的建立

18-2-4 18-2-4 建立建立 GoogleGoogle 搜尋的搜尋的 WebWeb 使使用者控制項用者控制項 -- 新增使用者控制項新增使用者控制項

在在 ASP.NETASP.NET 程式原始檔開頭是使用程式原始檔開頭是使用 RegisterRegister 指指引指令註冊引指令註冊WebWeb 使用者控制項,如下所示:使用者控制項,如下所示:

<%@ Register Src="Google.ascx" <%@ Register Src="Google.ascx"

TagName="Google" TagName="Google"

TagPrefix="uc1" %>TagPrefix="uc1" %> 上述指引指令的上述指引指令的 SrcSrc屬性是檔案名屬性是檔案名

稱,稱, TagNameTagName 是標籤名稱,是標籤名稱, TagPrefixTagPrefix 是標籤是標籤字頭。在註冊後,就可以新增名為字頭。在註冊後,就可以新增名為 GoogleGoogle的的WebWeb 使用者控制項,如下所示:使用者控制項,如下所示:

<uc1:Google ID="Google1" runat="server" /><uc1:Google ID="Google1" runat="server" />

Page 16: 第 18 章  個人入口網站的建立

18-3 18-3 網頁組件的個人化功能網頁組件的個人化功能 18-3-1 18-3-1 網頁組件的基礎網頁組件的基礎 18-3-2 18-3-2 建立網頁組件建立網頁組件 18-3-3 18-3-3 網頁組件的顯示模式網頁組件的顯示模式

Page 17: 第 18 章  個人入口網站的建立

18-3-1 18-3-1 網頁組件的基礎網頁組件的基礎 -1-1

ASP.NET 2.0ASP.NET 2.0 版支援版支援 MSPFMSPF(( Microsoft Portal Microsoft Portal FrameworkFramework ),提供網頁組件控制項(),提供網頁組件控制項( Web Web Part ControlPart Control )來建立個人化服務。)來建立個人化服務。

網頁組件控制項是一種擁有預設行為的網頁組件控制項是一種擁有預設行為的 ASP.NETASP.NET控制項,事實上,任何內建控制項或控制項,事實上,任何內建控制項或 WebWeb 使用使用者控制項都可以包裝成網頁組件控制項,換句話者控制項都可以包裝成網頁組件控制項,換句話說,它會自動擁有網頁組件控制項行為的個人化說,它會自動擁有網頁組件控制項行為的個人化系統,可以儲存使用者更改、配置、顯示或隱藏系統,可以儲存使用者更改、配置、顯示或隱藏等功能。等功能。

Page 18: 第 18 章  個人入口網站的建立

18-3-1 18-3-1 網頁組件的基礎網頁組件的基礎 -2-2

在網頁新增網頁組件控制項前,我們需要在網頁新增網頁組件控制項前,我們需要在網頁新增在網頁新增WebPartZoneWebPartZone和和WebPartMangerWebPartManger 控制項,其說明如下所控制項,其說明如下所示:示:• WebPartZoneWebPartZone 控制項:這是一種容器控制項,控制項:這是一種容器控制項,

可以在網頁建立區域來新增網頁組件控制項,可以在網頁建立區域來新增網頁組件控制項,內含基本的使用介面。內含基本的使用介面。

• WebPartManagerWebPartManager 控制項:管理網頁的網頁控制項:管理網頁的網頁組件控制項,可以控制和管理個人化狀態,如組件控制項,可以控制和管理個人化狀態,如果網頁擁有網頁組件控制項,就一定需要新增果網頁擁有網頁組件控制項,就一定需要新增此控制項。此控制項。

Page 19: 第 18 章  個人入口網站的建立

18-3-2 18-3-2 建立網頁組件建立網頁組件 請啟動請啟動 VWDVWD 開啟「開啟「 Ch18Ch18 」網站後,新」網站後,新增增Web FormWeb Form 範本名為範本名為 Ch18-3-2.aspxCh18-3-2.aspx的的 ASP.NETASP.NET 程式,筆者準備在此程式建立程式,筆者準備在此程式建立網頁組件。網頁組件。• 新增新增WebPartManagerWebPartManager 控制項控制項• 新增新增WebPartZoneWebPartZone 控制項控制項• 新增網頁組件至新增網頁組件至WebPartZoneWebPartZone 控制項控制項•格式化格式化 WebPartZoneWebPartZone 控制項控制項

Page 20: 第 18 章  個人入口網站的建立

18-3-3 18-3-3 網頁組件的顯示模式網頁組件的顯示模式 -- 說明說明 網頁組件預設提供多種顯示模式,可以使用網頁組件預設提供多種顯示模式,可以使用

WebPartManagerWebPartManager 物件的物件的 DisplayModeDisplayMode屬性屬性來更改顯示模式,其屬性值是來更改顯示模式,其屬性值是WebPartManagerWebPartManager 物件的欄位(物件的欄位( FieldsFields ),各),各欄位說明如下表所示:欄位說明如下表所示:欄位 說明BrowseDisplayMode 網頁的正常顯示模式,此為網頁組件的預設值DesignDisplayMode 設計顯示模式可以讓使用者更改版面配置,拖拉網頁組

件至其他WebPartZone控制項EditDisplayMode 編輯顯示模式會顯示編輯介面,可以讓使用者編輯控制

項的外觀、屬性和行為CatalogDisplayMode 目錄顯示模式會顯示可用的網頁組件清單,可以讓使用

者自行新增或刪除所需的網頁組件ConnectDisplayMode 連接顯示模式會提供介面來管理和編輯網頁組件間的連

接設定

Page 21: 第 18 章  個人入口網站的建立

18-3-3 18-3-3 網頁組件的顯示模式網頁組件的顯示模式 --在在ASP.NETASP.NET 程式切換顯示模式程式切換顯示模式 11

ASP.NETASP.NET 程式新增程式新增 RadioButtonListRadioButtonList 控制控制項來選擇顯示模式,如下所示:項來選擇顯示模式,如下所示:

<asp:RadioButtonList Id="displayMode" <asp:RadioButtonList Id="displayMode" Runat="server">Runat="server">

<asp:ListItem>Browse<asp:ListItem>Browse 模式模式 </asp:ListItem></asp:ListItem>

<asp:ListItem>Design<asp:ListItem>Design 模式模式 </asp:ListItem></asp:ListItem>

</asp:RadioButtonList></asp:RadioButtonList>

<asp:Button Id="btn" Text="<asp:Button Id="btn" Text=" 更改模式更改模式““

Runat="server"Runat="server"

OnClick="change_Mode"/>OnClick="change_Mode"/>

Page 22: 第 18 章  個人入口網站的建立

18-3-3 18-3-3 網頁組件的顯示模式網頁組件的顯示模式 --在在ASP.NETASP.NET 程式切換顯示模式程式切換顯示模式 22

在在 change_Mode()change_Mode() 事件處理程序指定事件處理程序指定WebPartManagerWebPartManager 物件的顯示模式,如下所示:物件的顯示模式,如下所示:

Sub change_Mode(Sender As Object, _Sub change_Mode(Sender As Object, _ E As EventArgs)E As EventArgs) Select Case displayMode.SelectedIndexSelect Case displayMode.SelectedIndex Case 0: Case 0: WebPartManager1.DisplayMode = _WebPartManager1.DisplayMode = _ WebPartManager.BrowseDisplayModeWebPartManager.BrowseDisplayMode Case 1: Case 1: WebPartManager1.DisplayMode = _WebPartManager1.DisplayMode = _ WebPartManager.DesignDisplayModeWebPartManager.DesignDisplayMode End SelectEnd SelectEnd SubEnd Sub

Page 23: 第 18 章  個人入口網站的建立

18-4 Web18-4 Web 服務的基礎服務的基礎 18-4-1 18-4-1 什麼是什麼是 WebWeb 服務服務 18-4-2 18-4-2 建立建立 WebWeb 服務應用程式服務應用程式

Page 24: 第 18 章  個人入口網站的建立

18-4-1 18-4-1 什麼是什麼是 WebWeb 服務服務 WebWeb 服務(服務( Web ServicesWeb Services )是一種企業級的)是一種企業級的應用程式,可以透過應用程式,可以透過 InternetInternet 建立自動機制提供建立自動機制提供資料交換和工作分享等資源共享能力。資料交換和工作分享等資源共享能力。 WebWeb 服服務使用簡單和公開標準的通訊協定,並且提供低務使用簡單和公開標準的通訊協定,並且提供低成本的軟體整合和資料分享功能。成本的軟體整合和資料分享功能。

WebWeb 服務提供一組通用服務,可以同時提供多客服務提供一組通用服務,可以同時提供多客戶端(戶端( ClientsClients )使用,這是一組以)使用,這是一組以 XMLXML標籤作標籤作為傳遞訊息的函數呼叫,客戶端透過為傳遞訊息的函數呼叫,客戶端透過 HTTPHTTP傳送傳送函數呼叫給伺服端,伺服端以函數呼叫給伺服端,伺服端以 HTTPHTTP將結果傳回將結果傳回客戶端,可以提供客戶端更多的彈性,因為只需客戶端,可以提供客戶端更多的彈性,因為只需傳遞函數呼叫的訊息,就可以取得所需的資訊。傳遞函數呼叫的訊息,就可以取得所需的資訊。

Page 25: 第 18 章  個人入口網站的建立

18-4-2 18-4-2 建立建立 WebWeb 服務應用程式服務應用程式 --架架構構

WebWeb 服務的客戶端和伺服端是使用「服務的客戶端和伺服端是使用「 SOAPSOAP」」(( Simple Object Access ProtocolSimple Object Access Protocol )通訊協定)通訊協定來進行通訊,它是一種結合來進行通訊,它是一種結合 XMLXML標籤訊息和標籤訊息和HTTPHTTP協定的通訊協定。協定的通訊協定。 WebWeb 服務的應用程式架服務的應用程式架構,如下圖所示:構,如下圖所示:

Page 26: 第 18 章  個人入口網站的建立

18-4-2 18-4-2 建立建立 WebWeb 服務應用程服務應用程式式 -.NET Framework-.NET Framework的的 WebWeb 服務服務

微軟微軟 .NET Framework.NET Framework 可以建立可以建立 WebWeb 服服務的伺服端和客戶端程式,不過,務的伺服端和客戶端程式,不過, WebWeb 服服務的伺服端程式並非本書討論主題,有興務的伺服端程式並非本書討論主題,有興趣讀者可以自行參閱相關書籍。在本章主趣讀者可以自行參閱相關書籍。在本章主要說明如何使用要說明如何使用 ASP.NETASP.NET 程式,建立程式,建立WebWeb 服務的客戶端程式。服務的客戶端程式。

VWDVWD 支援建立支援建立 WSDLWSDL 檔案的檔案的 WebWeb參考,參考,換句話說,我們根本不需要了解換句話說,我們根本不需要了解 SOAPSOAP或或WSDLWSDL 的細節,就可以在的細節,就可以在 ASP.NETASP.NET 程式使程式使用類別方法和屬性來使用用類別方法和屬性來使用 WebWeb 服務。服務。

Page 27: 第 18 章  個人入口網站的建立

18-5 Amazon18-5 Amazon的的 WebWeb 服務服務 18-5-1 18-5-1 申請申請 AmazonAmazon的的WebWeb 服務服務 18-5-2 18-5-2 使用使用 AmazonAmazon的的WebWeb 服務服務

Page 28: 第 18 章  個人入口網站的建立

18-5-1 18-5-1 申請申請 AmazonAmazon的的 WebWeb 服服務務

AmazonAmazon 是著名的網路書店,相關圖書查是著名的網路書店,相關圖書查詢功能可以使用詢功能可以使用 AmazonAmazon的的WebWeb 服務,服務,建立建立 ASP.NETASP.NET 程式來執行圖書查詢。程式來執行圖書查詢。

AmazonAmazon的的WebWeb 服務(服務( Amazon Web Amazon Web ServicesServices,, AWSAWS )在本書使用的版本是)在本書使用的版本是4.04.0 版,網站首頁為版,網站首頁為 http://www.amazonhttp://www.amazon.com/webservices.com/webservices ,在使用,在使用 AWSAWS 前需前需要先註冊成為會員。要先註冊成為會員。

Page 29: 第 18 章  個人入口網站的建立

18-5-2 18-5-2 使用使用 AmazonAmazon的的 WebWeb 服務服務 --說明說明

在在 AWSAWS 申請取得申請取得WebWeb 服務的服務的 Access Access Key IDKey ID 後,就可以啟動後,就可以啟動 VWDVWD 加入加入 WebWeb服務的服務的 WebWeb參考,然後才能夠建立參考,然後才能夠建立ASP.NETASP.NET 程式來使用程式來使用 AmazonAmazon的的WebWeb 服服務。務。

Page 30: 第 18 章  個人入口網站的建立

18-5-2 18-5-2 使用使用 AmazonAmazon的的 WebWeb 服務服務 --在在 VWDVWD加入加入 WebWeb參考參考

在在 VWDVWD加入加入 WebWeb參考是匯入參考是匯入 WebWeb 服務的服務的WSDLWSDL 檔案。請啟動檔案。請啟動 VWDVWD開啟「開啟「 Ch18Ch18」網站」網站後,執行「網站後,執行「網站 // 加入加入 WebWeb參考」指令,可以看參考」指令,可以看到「加入到「加入 WebWeb參考」對話方塊。參考」對話方塊。

在上方在上方 URLURL 欄輸入欄輸入 AmazonAmazon的的WSDLWSDL 檔案網址,檔案網址,如下所示:如下所示:

http://webservices.amazon.com/AWSEComhttp://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdmerceService/AWSECommerceService.wsdll

按按【【移至移至】】鈕,稍等一下,可以在下方看到鈕,稍等一下,可以在下方看到 WebWeb服務的類別說明,請按服務的類別說明,請按【【加入參考加入參考】】鈕在網站加鈕在網站加入入WebWeb參考。參考。

Page 31: 第 18 章  個人入口網站的建立

18-5-2 18-5-2 使用使用 AmazonAmazon的的 WebWeb 服務服務 --建立建立 ASP.NETASP.NET 程式使用程式使用 WebWeb 服務服務

在在 ASP.NETASP.NET 程式使用指定的程式使用指定的 WebWeb 服務,需要匯服務,需要匯入入WebWeb 服務的名稱空間,如下所示:服務的名稱空間,如下所示:

<%@ Import <%@ Import Namespace="com.amazon.webservices" %>Namespace="com.amazon.webservices" %>

現在我們只需使用現在我們只需使用 WebWeb 服務定義的類別,就可服務定義的類別,就可以在以在 ASP.NETASP.NET 程式使用程式使用 WebWeb 服務。服務。

AmazonAmazon的的WebWeb 服務就是建立服務就是建立AWSECommerceServiceAWSECommerceService 物件,如下所示:物件,如下所示:

Dim objAmazon As AWSECommerceService = _Dim objAmazon As AWSECommerceService = _

New AWSECommerceService()New AWSECommerceService()

Page 32: 第 18 章  個人入口網站的建立

18-5-2 18-5-2 使用使用 AmazonAmazon的的 WebWeb 服務服務 --圖例圖例