Files
build-web-application-with-…/8.md
2012-10-09 17:02:28 +08:00

27 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#8 Web服务
Web服务可以让你在HTTP协议的基础上通过XML或者JSON来交换信息。如果你想知道上海的天气预报、中国石油的股价或者淘宝商家的一个商品信息你可以编写一段简短的代码通过抓取这些信息然后通过标准的接口开放出来就如同你调用一个本地函数并返回一个值。
Web服务背后的关键在于平台的无关性你可以运行你的服务在Linux系统可以与其他Window的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的代码。
## 目录
* 1. [Socket编程](8.1.md)
* 2. [WebSocket](8.2.md)
* 3. [REST](8.3.md)
* 4. [RPC](8.4.md)
* 5. [小结](8.5.md)
## links
* [目录](<preface.md>)
* 上一章: [第七章总结](<7.5.md>)
* 下一节: [Socket编程](<8.1.md>)
## LastModified
* $Id$