1. 程式人生 > >webservice 簡單實例

webservice 簡單實例

script 搜索 控制臺 window 地址 下一步 分布 ip地址 定義

webservice 可以用於分布式應用程序之間的交互,和不同程序之間的交互。

概念性的東西就不說太多,下面開始創建一個簡單的webservice的例子。這裏我用的是Visual Studio 2015開發工具。

首先創建一個空的Web應用程序。

技術分享圖片

技術分享圖片

然後鼠標右鍵點擊項目,選擇 添加>新建項。

技術分享圖片

技術分享圖片

選擇Web服務,點擊添加。一個簡單的webservice就創建完成了,接下來編寫兩個簡單的方法。

技術分享圖片

PS:如果方法需要通過webservice的地址進行調用,那就必須在方法上面打上 [WebMethod] 的特性標簽,否則是無法通過webservice訪問到的。Description 是方法的描述。

技術分享圖片

技術分享圖片

然後運行一下,就可以看到上圖的方法了,訪問 webservice 就可以根據地址欄裏的地址進行調用 webservice 的方法了。

但是這樣如何讓其他應用程序通過網絡進行訪問呢?那就需要部署到服務器了。

下面的演示我是部署在本機的,不過服務器部署也是一樣的。網站部署需要用到 IIS,而我這裏是已經開啟的,如果沒有開啟的話,可以通過 開始菜單 > 控制面板 > 程序 > 啟用或關閉 windows 功能 開啟。具體的可以網上搜索一下,這裏就不做過多的介紹。

開啟 IIS 之後,先把剛才的 webservice 發布之後,然後打開 IIS 管理器。

技術分享圖片

選擇自定義,然後輸入配置文件名稱,然後點擊下一步。

技術分享圖片

然後選擇發布的方式和發布的路徑,然後點擊下一步。

技術分享圖片

設置不用改,繼續下一步。然後點擊發布。

技術分享圖片

這樣就發布完成了,現在打開 IIS 管理器,然後選擇網站,點擊添加網站。

技術分享圖片

技術分享圖片

輸入網站的名稱、IP地址(本機可以不輸入IP地址)和端口,選擇文件的路徑,然後點擊確定,網站就創建完成了。

當然,並不一定就立馬可以使用了,這之中會出現很多的錯誤,下面是我碰到的一些錯誤和一些解決方法。

技術分享圖片

這個錯誤是因為文件的訪問權限不夠的問題。解決方法就是點擊編輯權限。

技術分享圖片

然後選擇安全欄,點擊編輯。

技術分享圖片

技術分享圖片

然後點擊添加一個用戶,把權限設置為允許。或者使用下面這種方法:

選擇網站,然後選中身份驗證,點擊基本設置。

技術分享圖片

選擇連接為。

技術分享圖片

技術分享圖片

然後選擇特定用戶,點擊設置,輸入本機的用戶名和密碼,點擊確定就可以了。然後可以點擊測試設置看看效果。

技術分享圖片

這個錯誤的原因是在安裝Framework v4.0之後,再啟用IIS,導致Framework沒有完全安裝。

解決方法就是:開始菜單 > 命令提示符(管理員),然後輸入並執行 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i 命令行。

技術分享圖片

這個問題的是因為,應用程序池設置的原因,開始新建網站的時候沒有選擇應用程序池,默認為v2.0的版本,不支持 Framework 4.5。

技術分享圖片

解決方法就是選擇應用程序池,然後改為v4.0的版本,管道模式設置為集成。

技術分享圖片

這個錯誤的原因是由於系統目錄下的Temp目錄無相應的權限所致。

解決方法就是進入 C盤 windows 目錄下的 Temp 目錄,右鍵屬性 > 安全欄 > 編輯 > IIS_IUSRS 的權限設置為完全控制。

技術分享圖片

技術分享圖片

這個錯誤的原因是因為沒有配置網站的默認文檔。

解決方法就是選中網站,點擊默認文檔,然後添加一個默認的頁面,即應用程序的起始頁面。

技術分享圖片

技術分享圖片

然後,處理了眾多問題之後,總算是部署成功了。

技術分享圖片

接下來,就來個簡單的 webservice 的調用示例。

技術分享圖片

先添加一個控制臺應用程序,然後右鍵引用,選擇添加服務引用。

技術分享圖片

點擊高級,然後在彈出來的頁面點擊 添加web引用。

技術分享圖片

技術分享圖片

在URL欄輸入部署的網站地址,然後點擊轉到,就可以看到下面的方法內容了,然後輸入web引用名稱,點擊添加引用。

引用添加完成,下面就開始調用webservice。

技術分享圖片

結果如下:

技術分享圖片

webservice 簡單實例