荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: jjk (UNIX+C+XML+?? 傻了?), 信区: Linux
标  题: HTTP协议的客户端程序                   guru (转寄)[转载]
发信站: 荔园晨风BBS站 (Thu Apr 25 10:25:43 2002), 转信

【 以下文字转载自 jjk 的信箱 】
【 原文由 jjk.bbs@apue.dhs.org 所发表 】
:发信人: seabird (哑巴), 信区: Linux
:标  题: Re: 哪有http协议的源程序
:发信站: 武汉白云黄鹤站 (2001年04月13日16:17:45 星期五), 站内信件
/**********************************************

*以下程序是HTTP协议的客户端程序

*编译运行:

*gcc client.c -o client

*client news.hust.edu.cn

*********************************************/

#include <stdio.h>

   #include <stdlib.h>

   #include <string.h>

   #include <stdarg.h>

   #include <sys/socket.h>

   #include <netinet/in.h>

   #include <netdb.h>

   int htconnect(char *domain,int port)

   {

     int white_sock;

     struct hostent * site;

     struct sockaddr_in me;

     site = gethostbyname(domain);

     if (site==NULL) return -2;

     white_sock = socket(AF_INET,SOCK_STREAM,0);

     if (white_sock<0) return -1;

     memset(&me,0,sizeof(struct sockaddr_in));

     memcpy(&me.sin_addr,site->h_addr_list[0],site->h_length);

     me.sin_family = AF_INET;

     me.sin_port = htons(port);

     return (connect(white_sock,(struct sockaddr *)&me,sizeof(struct

   sockaddr))<0) ? -1 : white_sock;

   }

   int htsend(int sock,char *fmt,...)

   {

     char BUF[1024];

     va_list argptr;

     va_start(argptr,fmt);

     vsprintf(BUF,fmt,argptr);

     va_end(argptr);

     return send(sock,BUF,strlen(BUF),0);

   }

   void main(int argc,char **argv)

   {

     int black_sock;

     char bugs_bunny[3];

     if (argc<2) return;

     black_sock = htconnect(argv[1],80);

     if (black_sock<0) return;

     htsend(black_sock,"GET / HTTP/1.0%c",10);

     htsend(black_sock,"Host: %s%c",argv[1],10);

     htsend(black_sock,"%c",10);

     while (read(black_sock,bugs_bunny,1)>0) {

   printf("%c",bugs_bunny[0]); }

     close(black_sock);

   }



【 在 lxfg (网络游魂) 的大作中提到: 】

: rt

--


--
※ 转寄:·UNIX编程 apue.dhs.org·[FROM: 210.39.3.50]
--
※ 转载:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.146]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店