.Net中WebService從創建到發佈到部署帶(IIS)的過程筆記

来源:https://www.cnblogs.com/XingLinJiang/archive/2019/08/13/11347469.html
-Advertisement-
Play Games

一、Web Service 1、定義 是可以接收從Internet上的其他系統中傳遞的請求,是一種輕量級的獨立的通訊技術, 能使得運行在不同機器上的不同應用無須藉助附加的、專門的第三方軟體或硬體, 就可相互交換數據或集成。所以它是一個平臺獨立,低耦合,自包含,基於可編程的Web應用程式,適用於開發分 ...


一、Web Service

  1、定義

       是可以接收從Internet上的其他系統中傳遞的請求,是一種輕量級的獨立的通訊技術, 能使得運行在不同機器上的不同應用無須藉助附加的、專門的第三方軟體或硬體, 就可相互交換數據或集成。所以它是一個平臺獨立,低耦合,自包含,基於可編程的Web應用程式,適用於開發分散式的互操作的應用程式,減少了應用程式的花費,為各個不同的系統提供了一個通用機制。

2、XML,SOAP和WSDL就是構成WebService平臺的三大技術

XML:擴展型標記語言,面向短期的零時數據處理、面向萬維網路,是SOAP的基礎;

SOAP:是XML文檔形式的調用方法規範,它可以支持不同的底層介面像HTTP(S)和SMTP;

WSDL(Web Services Description Language):文件是一個XML文檔,用於說明一組SOAP消息以及如何交換這些消息,大多數情況下是由軟體自動生成和使用;

WebService採用Http協議來在客戶端和服務端之間傳輸數據。WebService使用XML來封裝數據,XML主要的優點在於它是跨平臺的。

WebService通過HTTP協議發送請求和接收結果時,發送的請求內容和結果內容都採用XML格式封裝,並增加了一些特定的HTTP消息頭,以說明HTTP消息的內容格式,這些特定的HTTP消息頭和XML內容格式就是SOAP協議規定的。

WebService伺服器端首先要通過一個WSDL文件來說明自己有什麼服務可以對外調用。

簡單的說,WSDL就像是一個說明書,用於描述WebService及其方法、參數和返回值。 WSDL文件保存在Web伺服器上,通過一個url地址就可以訪問到它。客戶端要調用一個WebService服務之前,要知道該服務的WSDL文件的地址。WebService服務提供商可以通過兩種方式來暴露它的WSDL文件地址:1.註冊到UDDI伺服器,以便被人查找;2.直接告訴給客戶端調用者。

WebService交互的過程就是,WebService遵循SOAP協議通過XML封裝數據,然後由Http協議來傳輸數據。

3、特征:

1、它是基於SOAP協議的,數據格式是XML

2、只支持HTTP協議

3、它不是開源的,但可以被任意一個瞭解XML的人使用

 4、它只能部署在IIS上

二、基於.NET平臺的Web Services創建

1、打開VS(2017)工具,點文件—》新建項目—》Visual c#—》ASP.NET Web應用程式

2、在之前創建的項目的基礎上,右鍵點擊—》添加—》新建項

3、創建成功

三、WebService(IIS)發佈

1、先將創建的項目重新生成一遍,並生成成功後,右鍵點擊項目—》發佈—》

 

 

 

四、部署在WindowServer2012伺服器的IIS上

1、先在伺服器上安裝IIS,具體步驟網上有教程,安裝成功後。

2、具體步驟如下:

1>、打開IIS伺服器

 

2>右鍵點擊網站—》添加新網站

 

3>程式應用池配置

4>點擊新建的網站,點擊預設文檔-》新增預設文檔

5>瀏覽網站可能會遇到一下錯誤

解決方法:添加文件夾控制許可權

6>再次瀏覽網站,就OK了

五、外網調用發佈的WebService服務

1>、訪問方式:公網IP:埠    例如:http://localhost:8085/WebService1.asmx   

          將localhost換成公網IP  http://106.52.37.221:8085/WebService1.asmx

可能會遇到以下錯誤:

 

錯誤原因:伺服器上防火牆阻止了訪問,

解決方法;1、直接關閉防火牆(不推薦)

              2、建立入站規則,步驟如下:

1.只控制面板中找到防火牆-》選擇高級設置-》點擊入站規則

2、新建入站規則

3.填寫埠, 即新建網站時配置的埠號  如前面配置的8085埠

4.下一步

5.下一步

6.下一步

7.完成以上操作後,重新訪問http://106.52.37.221:8085/WebService1.asmx

 

8.部署成功OK了,其他應用程式就可以調用了

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • JobManager 的作用 <! more https://t.zsxq.com/2VRrbuf 博客 1、 "Flink 從0到1學習 —— Apache Flink 介紹" 2、 "Flink 從0到1學習 —— Mac 上搭建 Flink 1.6.0 環境並構建運行簡單程式入門" 3、 "F ...
  • 字元串格式化處理 遠古寫法 以前通常使用運算符號 , 插入的值 類型, 指插入的值為包含 3 位小數的浮點數: 關鍵字插入法: Python 3 推薦方法 新版本 Python 中,應選擇使用字元串方法 ,每個替換欄位都用 大括弧(花括弧)括起,括弧內可留空或添加格式設置信息: 一般用法: 索引也可 ...
  • JobGraph <! more https://t.zsxq.com/naaMf6y 博客 1、 "Flink 從0到1學習 —— Apache Flink 介紹" 2、 "Flink 從0到1學習 —— Mac 上搭建 Flink 1.6.0 環境並構建運行簡單程式入門" 3、 "Flink 從 ...
  • 在平時看各種框架的源碼的過程中,經常會看到一些位移運算,所以作為一個Java開發者是一定掌握位移運算的。 正數位移運算 Java中有三個位移運算: 我們直接看一下Demo: 乍一眼看到上面Demo的列印結果,你應該是懵逼的,接下來我來解釋一下這個結果到底是如何運算出來的。 上面的Demo中有“2”和 ...
  • 第一種方法: 採用排序,進行兩趟冒泡排序,當數據基本有序(升序)且不要求按照原有數據中的順序輸出時可選擇此方法 第二種方法: 輸出的數據按照原有數據中的順序排列 測試數據: 懶得輸入,就直接初始化了 註意:在第二次使用同一組數據時,需要重新輸入或者定義另一個數組賦初值,切不可直接使用,因為冒泡排序已 ...
  • Win服務程式編寫以及安裝一般步驟 Windows服務的優點有:1. 能夠自動運行。2. 不要求用戶交互。3. 在後臺運行。本文將介紹常見服務程式編寫的一般步驟以及註意事項。 設計服務程式實例: 使用語言:VB.Net,開發工具:Visual Studio 2010 新建服務項目 如圖1所示: 圖1 ...
  • 本章主要和大家分享下在ASP.NET MVC中我們的Action如何向視圖傳遞匿名類型的值。 ...
  • 1、在電腦科學中,二叉樹是每個結點最多有兩個子樹的樹結構。通常子樹被稱作“左子樹”(left subtree)和“右子樹”(right subtree)。(百度百科) 廣度優先搜索(Breadth First Search),又叫寬度優先搜索或橫向優先搜索,是從根結點開始沿著樹的寬度搜索遍歷,上面 ...
一周排行
    -Advertisement-
    Play Games
  • 1. 說明 /* Performs operations on System.String instances that contain file or directory path information. These operations are performed in a cross-pla ...
  • 視頻地址:【WebApi+Vue3從0到1搭建《許可權管理系統》系列視頻:搭建JWT系統鑒權-嗶哩嗶哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中設置鑒權屬性 /*jwt鑒權*/ "JwtSetting": { "Issuer" ...
  • 引言 集成測試可在包含應用支持基礎結構(如資料庫、文件系統和網路)的級別上確保應用組件功能正常。 ASP.NET Core 通過將單元測試框架與測試 Web 主機和記憶體中測試伺服器結合使用來支持集成測試。 簡介 集成測試與單元測試相比,能夠在更廣泛的級別上評估應用的組件,確認多個組件一起工作以生成預 ...
  • 在.NET Emit編程中,我們探討了運算操作指令的重要性和應用。這些指令包括各種數學運算、位操作和比較操作,能夠在動態生成的代碼中實現對數據的處理和操作。通過這些指令,開發人員可以靈活地進行算術運算、邏輯運算和比較操作,從而實現各種複雜的演算法和邏輯......本篇之後,將進入第七部分:實戰項目 ...
  • 前言 多表頭表格是一個常見的業務需求,然而WPF中卻沒有預設實現這個功能,得益於WPF強大的控制項模板設計,我們可以通過修改控制項模板的方式自己實現它。 一、需求分析 下圖為一個典型的統計表格,統計1-12月的數據。 此時我們有一個需求,需要將月份按季度劃分,以便能夠直觀地看到季度統計數據,以下為該需求 ...
  • 如何將 ASP.NET Core MVC 項目的視圖分離到另一個項目 在當下這個年代 SPA 已是主流,人們早已忘記了 MVC 以及 Razor 的故事。但是在某些場景下 SSR 還是有意想不到效果。比如某些靜態頁面,比如追求首屏載入速度的時候。最近在項目中回歸傳統效果還是不錯。 有的時候我們希望將 ...
  • System.AggregateException: 發生一個或多個錯誤。 > Microsoft.WebTools.Shared.Exceptions.WebToolsException: 生成失敗。檢查輸出視窗瞭解更多詳細信息。 內部異常堆棧跟蹤的結尾 > (內部異常 #0) Microsoft ...
  • 引言 在上一章節我們實戰了在Asp.Net Core中的項目實戰,這一章節講解一下如何測試Asp.Net Core的中間件。 TestServer 還記得我們在集成測試中提供的TestServer嗎? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 ...
  • 在發現結果為真的WHEN子句時,CASE表達式的真假值判斷會終止,剩餘的WHEN子句會被忽略: CASE WHEN col_1 IN ('a', 'b') THEN '第一' WHEN col_1 IN ('a') THEN '第二' ELSE '其他' END 註意: 統一各分支返回的數據類型. ...
  • 在C#編程世界中,語法的精妙之處往往體現在那些看似微小卻極具影響力的符號與結構之中。其中,“_ =” 這一組合突然出現還真不知道什麼意思。本文將深入剖析“_ =” 的含義、工作原理及其在實際編程中的廣泛應用,揭示其作為C#語法奇兵的重要角色。 一、下劃線 _:神秘的棄元符號 下劃線 _ 在C#中並非 ...