使用ACE构建一个简单的客户端
2007-11-08 18:36
344 查看
在写ASP.NET AJAX那个Sys.Net.WebRequest的例子的时候,突然想起,何不用ACE实现一个简单的客户端,也发一个请求,看看返回的信息,是怎么样的,反正也在业余学习ACE,权当练习。
说动手就动手,三下五除二,代码如下:
#include "ace/INET_Addr.h"
2#include "ace/SOCK_Stream.h"
3#include "ace/SOCK_Connector.h"
4#include "ace/Log_Msg.h"
5
6int ACE_TMAIN(int,ACE_TCHAR* [])
7{
8 ACE_INET_Addr server(2163,ACE_LOCALHOST);
9
10 ACE_SOCK_Connector connector;
11 ACE_SOCK_Stream peer;
12
13 if(connector.connect(peer,server) == -1)
14 ACE_ERROR_RETURN((LM_ERROR,
15 ACE_TEXT("%p\n"),
16 ACE_TEXT("connect")),1);
17
18 char buf[1024];
19
20 iovec iov[3];
21
22 iov[0].iov_base = "GET ";
23 iov[0].iov_len = 4;
24
25 iov[1].iov_base = "/Chapter2/GetTarget.aspx?Name=DonLiang ";
26 iov[1].iov_len = 39;
27
28 iov[2].iov_base = "HTTP/1.1\r\n\r\n";
29 iov[2].iov_len = 13;
30
31 if(peer.sendv_n(iov,3) == 1)
32 return (1);
33
34 for(ssize_t n; ( n = peer.recv(buf,sizeof(buf)))>0;)
35 ACE::write_n(ACE_STDOUT,buf,n);
36
37 peer.close();
38
39 write(1,"\n",1);
40 return(0);
41}
这里也没什么特别的地方,也没什么难点,无非就是设置服务器的IP地址,连接服务器,发送请求,得到响应的信息,最后显示出来。
如图(和IE里的结果对比):
说动手就动手,三下五除二,代码如下:
#include "ace/INET_Addr.h"
2#include "ace/SOCK_Stream.h"
3#include "ace/SOCK_Connector.h"
4#include "ace/Log_Msg.h"
5
6int ACE_TMAIN(int,ACE_TCHAR* [])
7{
8 ACE_INET_Addr server(2163,ACE_LOCALHOST);
9
10 ACE_SOCK_Connector connector;
11 ACE_SOCK_Stream peer;
12
13 if(connector.connect(peer,server) == -1)
14 ACE_ERROR_RETURN((LM_ERROR,
15 ACE_TEXT("%p\n"),
16 ACE_TEXT("connect")),1);
17
18 char buf[1024];
19
20 iovec iov[3];
21
22 iov[0].iov_base = "GET ";
23 iov[0].iov_len = 4;
24
25 iov[1].iov_base = "/Chapter2/GetTarget.aspx?Name=DonLiang ";
26 iov[1].iov_len = 39;
27
28 iov[2].iov_base = "HTTP/1.1\r\n\r\n";
29 iov[2].iov_len = 13;
30
31 if(peer.sendv_n(iov,3) == 1)
32 return (1);
33
34 for(ssize_t n; ( n = peer.recv(buf,sizeof(buf)))>0;)
35 ACE::write_n(ACE_STDOUT,buf,n);
36
37 peer.close();
38
39 write(1,"\n",1);
40 return(0);
41}
这里也没什么特别的地方,也没什么难点,无非就是设置服务器的IP地址,连接服务器,发送请求,得到响应的信息,最后显示出来。
如图(和IE里的结果对比):
![](http://images.cnblogs.com/cnblogs_com/donliang/AJAX-Get-With-ACE-2.jpg)
相关文章推荐
- 使用python构建一个简单的发布系统
- 构建垂直搜索引擎 本课程带领大家实现一个简单的垂直搜索引擎网站,使用nodejs、python、elasticsearch实现的。
- 使用RxJava+Retrofit+MVP+Glide开发一个简单的新闻客户端
- 使用TCP+winsock写的一个简单客户端程序
- 一个简单的ACE Reactor框架的使用
- linux下使用管道实现一个简单的服务器/客户端
- 使用Node.js实现一个简单的ZooKeeper客户端
- 使用Poco库编写一个简单的http客户端原理
- 使用YII构建移动客户端的服务器:不只是输出Json那么简单
- 详细介绍附代码:使用jquery,和php文件构建一个简单的在线聊天室,通过ip显示googlemap
- 4 - Swift之2 - 使用xcode7构建一个简单的应用并在IOS9设备上真机运行
- Spring学习(二)——使用Gradle构建一个简单的Spring MVC Web应用程序
- 一个ASP(JScript)简单SQL语句构建“类”,同时支持客户端和服务器端执行的
- 在Win10上使用VS2015构建一个简单的WCF项目
- 使用Pylearn2构建一个简单的分类器
- 使用maven构建一个SSM(Spring+SpringMVC+Mybatis(阿里数据连接池)的简单环境
- 在 Eclipse Workbench 之外使用 Eclipse GUI,第 1 部分: 单独使用 JFace 和 SWT构建一个简单的文件资源管理器应用程序
- 构建一个简单的jquery定时器,方便随时拿来使用。
- 使用MVVM构建一个简单的WPF应用
- 如何使用Maven 3.0, Flex Mojos 4.0和Flex 4.5构建一个简单的SWF程序