Я программист начального/промежуточного уровня, который в настоящее время пытается написать простой веб-сервер в Python 3. Однако всякий раз, когда я запускаю модуль, я получаю OSError: [Errno 9 ] Плохой дескриптор файла. Я искал интернет, ища ответы, но я, похоже, не могу понять это самостоятельно. Вот код и отслеживающий:OSError: [Errno 9] Плохой дескриптор файла в python 3
#import socket module
from socket import *
serverSocket=socket(AF_INET,SOCK_STREAM)
#Prepare a server socket
serverSocket.bind(('IP address', 8000))
serverSocket.listen(1)
while True:
#Establish the connection
print('Ready to serve...')
(connectionSocket, addr) = serverSocket.accept()
print ('connected from',addr)
try:
message=connectionSocket.recv(1024)
filename=message.split()[1]
print (filename)
filename=message.split()[1]
f=open(filename[1:])
outputdata=f.read()
#Send one HTTP header line into socket
connectionSocket.send('HTTP/1.1 200 OK')
#Send the content of the requested file to the client
for i in range(0, len(outputdata)):
connectionSocket.send(outputdata[i])
connectionSocket.close()
except IOError as err:
print ('IO error')
#Send response message for file not found
connectionSocket.send(b'file not found')
#Close client socket
connectionSocket.close()
serverSocket.close()
Traceback:
Traceback (most recent call last):
File "/Users/BigRed/Desktop/SOS/webServer.py", line 17, in <module>
(connectionSocket, addr) = serverSocket.accept()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/socket.py", line 184, in accept
fd, addr = self._accept()
OSError: [Errno 9] Bad file descriptor
Почему есть тег «django»? – lalo
У вас была ошибка IOError? – lalo
Да, вероятно, не нужен тег django, он был рекомендован по любой причине. Возможно, пользователь django может знать. В любом случае там была ошибка ввода-вывода при выполнении кода: Готов к подаче ... , связанный с ('10 .0.0.6 ', 50077) b'/helloworld.html ' Ошибка ввода-вывода Готов к отправке ... – tracer223