Files
build-web-application-with-…/zh-tw/08.0.md
2019-02-26 01:40:54 +08:00

2.0 KiB
Raw Blame History

8 Web服務

Web服務可以讓你在HTTP協議的基礎上透過XML或者JSON來交換資訊。如果你想知道上海的天氣預報、中國石油的股價或者淘寶商家的一個商品資訊你可以編寫一段簡短的程式碼透過抓取這些資訊然後透過標準的介面開放出來就如同你呼叫一個本地函式並返回一個值。

Web服務背後的關鍵在於平臺的無關性你可以執行你的服務在Linux系統可以與其他Windows的asp.net程式互動同樣的也可以透過同一個介面和執行在FreeBSD上面的JSP無障礙地通訊。

目前主流的有如下幾種Web服務REST、SOAP。

REST請求是很直觀的因為REST是基於HTTP協議的一個補充他的每一次請求都是一個HTTP請求然後根據不同的method來處理不同的邏輯很多Web開發者都熟悉HTTP協議所以學習REST是一件比較容易的事情。所以我們在8.3小節將詳細的講解如何在Go語言中來實現REST方式。

SOAP是W3C在跨網路資訊傳遞和遠端計算機函式呼叫方面的一個標準。但是SOAP非常複雜其完整的規範篇幅很長而且內容仍然在增加。Go語言是以簡單著稱所以我們不會介紹SOAP這樣複雜的東西。而Go語言提供了一種天生效能很不錯開發起來很方便的RPC機制我們將會在8.4小節詳細介紹如何使用Go語言來實現RPC。

Go語言是21世紀的C語言我們追求的是效能、簡單所以我們在8.1小節裡面介紹如何使用Socket程式設計很多遊戲服務都是採用Socket來編寫伺服器端因為HTTP協議相對而言比較耗費效能讓我們看看Go語言如何來Socket程式設計。目前隨著HTML5的發展webSockets也逐漸的成為很多頁遊公司接下來開發的一些手段我們將在8.2小節裡面講解Go語言如何編寫webSockets的程式碼。

目錄