使用ACE构建一个简单的客户端

    在写ASP.NET AJAX那个Sys.Net.WebRequest的例子的时候,突然想起,何不用ACE实现一个简单的客户端,也发一个请求,看看返回的信息,是怎么样的,反正也在业余学习ACE,权当练习。
    说动手就动手,三下五除二,代码如下:
   
示例代码
 1#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里的结果对比):
   

转载于:https://www.cnblogs.com/DonLiang/archive/2007/11/08/953658.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值