免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2969 | 回复: 4
打印 上一主题 下一主题

再帮我一个网络编程的问题~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-03-07 15:58 |只看该作者 |倒序浏览
socket server怎么绑定cmd实现可以用telnet交互~谢谢先

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2003-03-07 16:27 |只看该作者

再帮我一个网络编程的问题~

我都在unix上面寫socket server....
不過兩者原理差不多...
client端用telnet xxx.xxx.xxx 9876
連到某台server的9876 port
輸入某些字串後...
server端接收到這些字串後,回傳給client..
這時候一般的程序都會將socket handle關閉..
其實你只要不close(SOCKET);就可以繼續接收client端的
輸入..(這樣子就變成interactive了)..然後你可以作後續的處理..

client端按下"Enter"時,
socket server才會收到client的送來的字串...

注意M$ Windows的cmd ,
執行telnet 會看不到你輸入的字串..
所以可以的話找台linux或unix..
作telnet 的測試....

论坛徽章:
0
3 [报告]
发表于 2003-03-07 16:34 |只看该作者

再帮我一个网络编程的问题~

老大,谢谢你了。能给我写个简单的代码吗?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2003-03-07 16:47 |只看该作者

再帮我一个网络编程的问题~

#!/usr/bin/perl
use Socket;
$AF_INET=2;
$SOCK_STR=1;
$PROTOCOL=0;
$port=6667;
$PACKIT='S n C4x8';
select(NEWSOCK);
$|=1;
select(STDOUT);
socket(MY_SOCKET,$AF_INET,$SOCK_STR,$PROTOCOL)||die "\n $0:Cannot open socket!";
print "socket successfull opended!\n";
$my_ip_addr=pack($PACKIT,$AF_INET,$port,127.0.0.1);
bind(MY_SOCKET,$my_ip_addr) || die "bind fail!";
print "bound to socket!";
listen(MY_SOCKET,5)|| die "cann't listen!";
print "listening..";
while(1){
$remote=accept(NEWSOCKET,MY_SOCKET) || die "unaccept!";
defined(my $pid=fork()) || &cleanup;

if($pid==0){   ## Child Process(子進程)..
sleep(3);
print NEWSOCKET "weclome to this server!";

while(chomp($ClientStr=<NEWSOCKET> ne "quit"{
## Client不管輸入什麼..都直接response回去
## 輸入quit時..Child Process會停止..送出CHLD signal給
## Parent Process..
   print NEWSOCKET "Your Input IS : ".$ClientStr."\n";
}

close NEWSOCKET;
close MY_SOCKET;
exit;
}
sleep 10;
close MY_SOCKET;
close NEWSOCKET;
exit;
}
sub cleanup {close NEWSOCKET;close(MY_SOCKET);die "cann't fork!";}

## 這個Server最好加上對Signal的處理...
## 否則很容易自動停掉..怎麼加其實不難...
## 你自行研究吧...

论坛徽章:
0
5 [报告]
发表于 2003-03-07 16:58 |只看该作者

再帮我一个网络编程的问题~

好的,谢谢啦:)~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP