OSError:[WinError 10038] webserver

时间:2013-02-26 21:26:14

标签: python sockets webserver

我制作了一个简单的Python Web服务器。 服务器运行正常,连接到浏览器,并发送数据。 当我将文件包含在我正在发送的HTML文档中时(如<img src="image_path"/>

它不想发送数据,也不想发送其他类似的数据,如样式表。我正在使用Chrome网络浏览器,并获得了标题:

GET /img.jpg HTTP/1.1
Host: localhost
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/537.17 (KHTML, like Gecko) 
Chrome/24.0.1312.57 Safari/537.17
Accept: */*
Referer: http://localhost/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: pl,en-US;q=0.8,en;q=0.6,nb;q=0.4
Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.3

我收到此错误消息:

Unhandled exception in thread started by <function handler at 0x02C28150>
Traceback (most recent call last):
File "C:\Users\CamIce\Desktop\PyServer v2\server.py", line 16, in handler
data = clientsock.recv(BUFSIZ)
OSError: [WinError 10038] Próbowano przeprowadzić próbę na obiekcie, który nie jest  
gniazdem

此消息的代码太长,所以我不得不将其发布在pastebin上: http://pastebin.com/n19J0y6A

1 个答案:

答案 0 :(得分:0)

您是否尝试将传入套接字绑定到另一个非特权端口而不是端口80(比如1024以上)?在我看来,这似乎是Windows防火墙以某种方式干扰,或者可能是其他一些权限问题。我觉得你在recv()调用之前没有收到错误,这似乎很奇怪,但我不太了解WIndows。

我的代码没有看到任何问题。