最先進的HTTP编程模式:服务器API模式
2012-05-27 19:49
323 查看
什么是服务器API编程模式?简单的说,就是在远程服务器上放置一系列的API,供客户端调用。因为HTTP是无状态协议,服务器API也是无状态的,就象MFC编程,程序员调用MFC库来完成他需要的任务。
服务器API使用HTTP协议,但不返回网页,而是返回数据,供客户端。数据可以是XML格式,也可以是JSON格式,当然也可以是其它的格式,如二進制等。客户端调用服务器API,获取需要的数据,再在客户端呈现给用户。
服务器API不同于WebServices。WebServices是一种构建于SOAP之上的服务,它有规范的封包格式和数据类型详述,而服务器API不需要标准化封包,而是API给用户端约定的格式,不需要为提供的数据做额外的描述。所以服务器API是比较自由的、高效的。
以用户登录为例。服务器向客户端提供一个调用:
int login(string account, string password);
该调用可转化为HTTP协议的uri形式:
http://server/api/login?account=&password=
客户端通过执行这个访问,获取登录是否成功的信息,然后客户端负责对此调用的返回值做解释:
$.getJSON("http://server/api/login", {“account”: account,
“password”: password},
function(data) {
if (data ==
0) {
alert("您已成功登录");
} else if (data ==
1) {
alert("账号不存在");
} else {
alert("密码错");
}
}
服务器API模式通常结合MVC来实现,但它只需要实现MVC模式的Model,实际的View是客户端。它是迄今为止性能最好、调试最方便的编程模式,适合构建超高性能的服务器应用。
飞腾网络评卷系统就是一个完全以服务器API模式来实现的服务器应用的实例,它使用JQuery 的异步访问来调用服务器API,实现从用户登录到取题、提交评分直到评卷结束退出的整个过程。
原文:http://user.qzone.qq.com/723807273/blog/1337912742
服务器API使用HTTP协议,但不返回网页,而是返回数据,供客户端。数据可以是XML格式,也可以是JSON格式,当然也可以是其它的格式,如二進制等。客户端调用服务器API,获取需要的数据,再在客户端呈现给用户。
服务器API不同于WebServices。WebServices是一种构建于SOAP之上的服务,它有规范的封包格式和数据类型详述,而服务器API不需要标准化封包,而是API给用户端约定的格式,不需要为提供的数据做额外的描述。所以服务器API是比较自由的、高效的。
以用户登录为例。服务器向客户端提供一个调用:
int login(string account, string password);
该调用可转化为HTTP协议的uri形式:
http://server/api/login?account=&password=
客户端通过执行这个访问,获取登录是否成功的信息,然后客户端负责对此调用的返回值做解释:
$.getJSON("http://server/api/login", {“account”: account,
“password”: password},
function(data) {
if (data ==
0) {
alert("您已成功登录");
} else if (data ==
1) {
alert("账号不存在");
} else {
alert("密码错");
}
}
服务器API模式通常结合MVC来实现,但它只需要实现MVC模式的Model,实际的View是客户端。它是迄今为止性能最好、调试最方便的编程模式,适合构建超高性能的服务器应用。
飞腾网络评卷系统就是一个完全以服务器API模式来实现的服务器应用的实例,它使用JQuery 的异步访问来调用服务器API,实现从用户登录到取题、提交评分直到评卷结束退出的整个过程。
原文:http://user.qzone.qq.com/723807273/blog/1337912742
相关文章推荐
- HTTP学习与Web服务器编程
- Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种模式且使用相同的访问权限账号
- Android 客户端通过内置API(HttpClient) 访问 服务器(用Spring MVC 架构) 返回的json数据全过程
- Linux网络编程一步一步学-编写一个HTTP协议的目录浏览和文件下载服务器
- Android网络编程:通过Http与服务器交互
- Golang:使用 httprouter 构建 API 服务器
- Linux 高性能服务器编程——Linux网络编程基础API
- golang http 编程-1(服务器编程)
- asp.net web api的自托管模式HttpSelfHostServer可以以控制台程序或windows服务程序为宿主,不单单依赖于IIS web服务器
- Linux 高性能服务器编程——Linux网络编程基础API
- 【服务器编程】EPOLL的LT和ET模式的区别和理解
- WIN32 API - http编程
- Socket编程--自己动手的HTTP代理服务器
- 飞信2010分析 – 使用HTTP模式和服务器通信
- Android网络编程之Http请求服务器数据(POST方式)
- Linux网络编程【三】:TCP服务器多进程和多线程(http访问)版本
- windows网络编程之Winsock(三)非阻塞select模式服务器
- 【服务器编程】EPOLL的LT和ET模式的区别和理解
- 服务器客户端编程模式思考
- Linux 高性能服务器编程——Linux网络编程基础API