环境
Win10(64)、python38、uvicorn,可以正常启动,但接收post或get请求时报错。
报错如下INFO:root:server started at http://127.0.0.1:8000...
ERROR:asyncio:Accept failed on a socket
socket:
Traceback (most recent call last):
File "C:\Python38\lib\asyncio\proactor_events.py", line 801, in loop
conn, addr = f.result()
File "C:\Python38\lib\asyncio\windows_events.py", line 808, in _poll
value = callback(transferred, key, ov)
File "C:\Python38\lib\asyncio\windows_events.py", line 557, in finish_accept
return conn, conn.getpeername()
OSError: [WinError 10014] 系统检测到在一个调用中尝试使用指针参数时的无效指针地址。
ERROR:asyncio:Task exception was never retrieved
future:
Traceback (most recent call last):
File "C:\Python38\lib\asyncio\windows_events.py", line 562, in accept_coro
await future
File "C:\Python38\lib\asyncio\proactor_events.py", line 801, in loop
conn, addr = f.result()
File "C:\Python38\lib\asyncio\windows_events.py", line 808, in _poll
value = callback(transferred, key, ov)
File "C:\Python38\lib\asyncio\windows_events.py", line 557, in finish_accept
return conn, conn.getpeername()
OSError: [WinError 10014] 系统检测到在一个调用中尝试使用指针参数时的无效指针地址。
问题原因是:系统使用或更新导致 winsock 出错
解决办法: 用管理身份运行cmd,执行 netsh winsock reset 重启问题解决