Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的简单套接字编程:糟糕的服务器_Python_Sockets - Fatal编程技术网

Python中的简单套接字编程:糟糕的服务器

Python中的简单套接字编程:糟糕的服务器,python,sockets,Python,Sockets,我正试图用python编写一个简单的text/HTTP服务器来模拟各种恶劣的网络条件。首先,我需要一个服务器,它似乎可以关闭连接,而不向浏览器发送任何数据,以便可靠地创建“net::ERR\u EMPTY\u RESPONSE”浏览器错误。大多数关于socket编程的教程都涉及如何创建好的服务器,而不是如何创建坏的服务器,所以我相信您会理解我在这里遇到的问题 以下是我目前掌握的情况: import socket, sys, time port = 8080 print

我正试图用python编写一个简单的text/HTTP服务器来模拟各种恶劣的网络条件。首先,我需要一个服务器,它似乎可以关闭连接,而不向浏览器发送任何数据,以便可靠地创建“net::ERR\u EMPTY\u RESPONSE”浏览器错误。大多数关于socket编程的教程都涉及如何创建好的服务器,而不是如何创建坏的服务器,所以我相信您会理解我在这里遇到的问题

以下是我目前掌握的情况:

    import socket, sys, time

    port = 8080
    print "Bad server is listening on " + str(port)
    serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    serversocket.bind(('localhost', port))

    serversocket.listen(5)

    #simulate successful transport after the 5th attempt
    counter = 0

    while True:
        #accept connections from outside
        (clientsocket, address) = serversocket.accept()
        time.sleep(1);

        if counter > 5:
            serversocket.write('<span class="position: relative; left: 20px;>hello</span>');

        serversocket.close()

        counter += 1
导入套接字,系统,时间
端口=8080
打印“坏服务器正在侦听”+str(端口)
serversocket=socket.socket(socket.AF\u INET,socket.SOCK\u流)
绑定(('localhost',port))
serversocket.listen(5)
#在第5次尝试后模拟成功的传输
计数器=0
尽管如此:
#接受来自外部的连接
(clientsocket,address)=serversocket.accept()
睡眠时间(1);
如果计数器>5:

write(“您应该使用
clientsocket
与客户端对话;
serversocket
只是监听

while True:
    #accept connections from outside
    (clientsocket, address) = serversocket.accept()
    time.sleep(1);

    if counter > 5:
        clientsocket.write('<span class="position: relative; left: 20px;>hello</span>');

    clientsocket.close()

    counter += 1
为True时:
#接受来自外部的连接
(clientsocket,address)=serversocket.accept()
睡眠时间(1);
如果计数器>5:
clientsocket.write('
while True:
    #accept connections from outside
    (clientsocket, address) = serversocket.accept()
    time.sleep(1);

    if counter > 5:
        clientsocket.write('<span class="position: relative; left: 20px;>hello</span>');

    clientsocket.close()

    counter += 1