socket - 初学python,试着写简单的服务器和客户端的时候,有点问题……
PHP中文网
PHP中文网 2017-04-17 14:29:55
[Python讨论组]

这是服务器的代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import socket
import sys
import traceback

host = ''
port = 8080

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(3)

while 1:
    try:
        conn, addr = s.accept()
        print conn, addr
        buf = s.recv(1024)
        print buf
    except socket.error:
        print 'Error'
        break

s.close()

这是客户端的代码:

    #!/usr/bin/env python
# -*- coding: utf-8 -*-

import socket
import traceback

host = ''
port = 8080

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.connect((host, port))

data = 'x'*2048
print len(data)
pos = 0
while pos < len(data)-1:
        lpos = pos
        rpos = min(len(data)-1, lpos + 1024)
        pos += s.send(data[lpos:rpos])
        print 'it has send %d'%rpos

while 1:
    buf = s.recv(1024)
    print '***', buf
    if buf is '':
        break
    s.sendall(buf)

s.close()

有点不知道怎么debug……服务器那边显示error,但是不知道是因为什么原因error……
想法是在客户端连入服务器后,向服务器发送1024字节的内容,然后服务器接收后把内容打出来,客户端把服务器信息也打印出来……
(⊙v⊙)嗯显然没有成功,求教求教!!~~~

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(1)
天蓬老师

抓errno,查py手册,包括socket错误号手册

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号