使用Socket API如何与WEB服务器通信
来源:asp之家 发布时间:2010-05-04 18:35:00
其实这个问题只要将请求网页HTTP内容明白就好解决.
请求HTTP头内容如下:
GET 你的网址 HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */* //要求返回的内容,如需要返回图片或Flash等,我通常都是让服务器仅返回text/html,主要是加快速度.
Accept-Language: zh-cn//使用的语言
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2) //这里主要是告诉服务器你的IE版号,所使用的系统及使用的浏览器,其实如果你想隐藏这里的内容,可以自行修改.
Host: www.paymesurf.com //服务器地址
Proxy-Connection: Keep-Alive
上面基本上是HTTP的内容,在使用过程中大家需要注意以下几点:
1 发送请求的内容时,一定要再多加一个+#13#10
Httpstr:=GET http://www.paymesurf.com:80/surf3.php?usrid=607 HTTP/1.1+#13#10;
httpstr:=httpstr+Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */*+#13#10;
httpstr:=httpstr+Accept-Language: zh-cn+#13#10;
httpstr:=httpstr+User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MyIE2;
.NET CLR 1.1.4322)+#13#10;
httpstr:=httpstr+Host: www.paymesurf.com+#13#10;
httpstr:=httpstr+Proxy-Connection: Keep-Alive+#13#10;
上面是一个网友的请求内容,而这个无法返回网页内容,主要问题就是没有告诉服务器哪里是结束位置.需要在最后面的位置再加入一个+#13#10,这样服务器 就会知道这里是结束了.
2 如何知道网页请求完毕,主要是通过FD_CLOSE来判断,当网页全部返回时,服务器会自动关闭这个请求,所以你只要知道当前请求关闭就说明网页已经下载完毕.
3 下面是我个人的经验了,如果你想写与WEB通信的软件,最好不要直接使用Socket与服务器通信,先将自己的IE设置成代理的模式,先看一看IE是如何通过代理软件(这个软件你最好自己写一个,可以显示请求的内容的.)工作的.然后你再使用你的软件与服务器通信这样你就知道你通常出错在哪里了.
猜你喜欢
- 几个月前我问网友:对于网赚联盟营销,他们最希望了解什么。经过筛选,我挑出了15个问题。然后找到了三个朋友,让他们来回答这15个关于网赚联盟
- 现在,一些网站推出了G容量的免费邮箱,引来许多网友纷纷注册使用。实际上,我们利用自己的服务器,使用任何一款邮件服务器软件,就能架设千兆甚至万
- 怎样找到客户的号码呢?你可以在你的AccountManager里的Info&More区域找到你的客户号码。注:如果不知道你的客户号码
- 牛年岁末,虎年岁初,一轮前所未有的激烈贺岁片大战旋即展开。近日刚刚上映的灾难巨片《2012》拉开了贺岁档大幕,而在未来三个月内贺岁大片将超过
- 来自WordPress开发者博客的消息,WordPress 2.9.2发布。WordPress 2.9.2是一个安全更新,WordPress
- UCenter Home是其发布的一款SNS建站系统,自发布至今国内采用UCenter Home搭建的地方及垂直SNS已经超过13万家。在
- 原创文章在提高网站权重上有着重要的作用,除了一些互动型的网站以外绝大多数的个人网站都是靠采集来添加网站数据。即使是手动添加文章,标题修改了,
- 据笔者了解,即将于11月7日13:00在江苏南京科技馆盛大召开的由主办江苏站长站和承办炎黄网络联合发起的“2009江苏站长年会暨江苏 (南京
- 我用的一个文章列表加上序号效果css代码部分 <style type="text/css">&nb
- 从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread Safe两种版本
- 一项专业的运动团体买了一个名牌服务器,但是它刚开始工作时就出问题。该网络管理员向操作系统厂商和硬件厂商提出帮助请求。6.设备转手次数太多,内
- 这几天一华尔街日报专栏作家Mark Penn的一篇《美国新职业“专职博客”》赢得不少关注。这篇文章的原文在这里。我稀里糊涂博客五年,对这个话
- 今天看到微博上@hellodba发的一个帖子:“内部晋升越来越困难,但是外部来的大P越来越多,所以很多人都选择跳槽”,之后我从三个方面简要的
- 喜欢看电影吗?有收藏电影的习惯吗?网上看电影,资源太多,纵使再大的硬盘都会很快装满,你是否在为无法保存自己喜爱的影片而发愁呢?我想大部分着迷
- 每个人都喜欢好用的技巧,对吗?这里有55个用于搜索引擎优化的小技巧,甚至你的老妈用起来都易如反掌。哦,不是我的老妈,但你明白我的意思。这意味
- 打开:require/sendemail.php查找第一个(269行左右):fwrite($fp, $msg); 在此行
- 前一段利用Wordpress构建了一个有声资源博客——有声盒子,在获得了一些朋友赞许的同时,也感觉到了原有的模板样式并不太适合于此类型站点的
- 7月11日消息,近日Google公布了一份网页统计报告,数据来源为Google索引的42亿个网页。网页的平均容量是320KB,(包含内嵌脚本
- 任何一个事情都有重点,我在‘论坛营销成功学(一)’中就把论坛营销的重点基本都说出来了。看过以后你可能觉得这些东西都知道,没有必要往下看了。其
- 这里我们按照所需要的服务开放响应的端口。在2003系统里,不推荐用TCP/IP筛选里的端口过滤功能,譬如在使用FTP服务器的时候