adapter-discord icon indicating copy to clipboard operation
adapter-discord copied to clipboard

Windows、macOS下均无法链接到Discord

Open MC-Nirvana opened this issue 9 months ago • 4 comments

Windows、macOS下均无法链接到Discord,都是这个报错。VPN我开了,而且Discord的客户端我也能正常使用,因此我也不清楚是什么原因导致的。 nonebot版本、适配器版本均为最新(因为是刚安装的) 系统为Windows11 24H2以及macOS15.3 防火墙均已关闭 以下是相关日志和配置文件

这是报错信息

02-04 00:18:43 [ERROR] nonebot | Discord | Failed to get gateway info.
Traceback (most recent call last):
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 101, in map_httpcore_exceptions
    yield
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 394, in handle_async_request
    resp = await self._pool.handle_async_request(req)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 256, in handle_async_request
    raise exc from None
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 236, in handle_async_request
    response = await connection.handle_async_request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\http_proxy.py", line 288, in handle_async_request
    connect_response = await self._connection.handle_async_request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 101, in handle_async_request
    raise exc
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 78, in handle_async_request
    stream = await self._connect(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 124, in _connect
    stream = await self._network_backend.connect_tcp(**kwargs)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_backends\auto.py", line 31, in connect_tcp
    return await self._backend.connect_tcp(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_backends\anyio.py", line 113, in connect_tcp
    with map_exceptions(exc_map):
  File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
    raise to_exc(exc) from exc
httpcore.ConnectError: All connection attempts failed

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<string>", line 17, in <module>
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\__init__.py", line 337, in run
    get_driver().run(*args, **kwargs)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\fastapi.py", line 187, in run
    uvicorn.run(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\uvicorn\server.py", line 66, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Program Files\Python312\Lib\asyncio\runners.py", line 194, in run
    return runner.run(main)
  File "C:\Program Files\Python312\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 673, in run_until_complete
    self.run_forever()
  File "C:\Program Files\Python312\Lib\asyncio\windows_events.py", line 322, in run_forever
    super().run_forever()
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 640, in run_forever
    self._run_once()
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 1992, in _run_once
    handle._run()
  File "C:\Program Files\Python312\Lib\asyncio\events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
> File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\adapters\discord\adapter.py", line 81, in run_bot
    gateway_info = await self._get_gateway_bot(bot_info)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\adapters\discord\adapter.py", line 131, in _get_gateway_bot
    resp = await self.request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\internal\adapter\adapter.py", line 92, in request
    return await self.driver.request(setup)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\httpx.py", line 134, in request
    return await session.request(setup)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\httpx.py", line 78, in request
    response = await self.client.request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1540, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1629, in send
    response = await self._send_handling_auth(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1657, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1694, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1730, in _send_single_request
    response = await transport.handle_async_request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 393, in handle_async_request
    with map_httpcore_exceptions():
  File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 118, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ConnectError: All connection attempts failed

这是完整日志,隐私信息均已做删减处理

使用 Python: D:\Documents\个人项目\QQ-DC-Bridge\.venv\Scripts\python.exe
启动重载监视,当前进程 [3304].
02-04 00:18:38 [SUCCESS] nonebot | NoneBot is initializing...
02-04 00:18:38 [INFO] nonebot | Current Env: prod
02-04 00:18:39 [SUCCESS] nonebot | Succeeded to load plugin "echo" from "nonebot.plugins.echo"
02-04 00:18:40 [INFO] nonebot_plugin_discord_message_bridge | [DMB] normal Forward: [Discord]109 -> [QQ]104
02-04 00:18:40 [INFO] nonebot_plugin_discord_message_bridge | [DMB] normal Forward: [QQ]104 -> [Discord]109
02-04 00:18:40 [SUCCESS] nonebot | Succeeded to load plugin "nonebot_plugin_discord_message_bridge"
02-04 00:18:40 [SUCCESS] nonebot | Running NoneBot...
02-04 00:18:40 [SUCCESS] nonebot | Loaded adapters: Discord
02-04 00:18:40 [INFO] uvicorn | Started server process [43708]
02-04 00:18:40 [INFO] uvicorn | Waiting for application startup.
02-04 00:18:40 [INFO] nonebot | Discord | Discord Adapter is starting up...
02-04 00:18:41 [INFO] uvicorn | Application startup complete.
02-04 00:18:41 [INFO] uvicorn | Uvicorn running on http://127.0.0.1:8080 (Press CTRL+C to quit)
02-04 00:18:43 [ERROR] nonebot | Discord | Failed to get gateway info.
Traceback (most recent call last):
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 101, in map_httpcore_exceptions
    yield
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 394, in handle_async_request
    resp = await self._pool.handle_async_request(req)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 256, in handle_async_request
    raise exc from None
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 236, in handle_async_request
    response = await connection.handle_async_request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\http_proxy.py", line 288, in handle_async_request
    connect_response = await self._connection.handle_async_request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 101, in handle_async_request
    raise exc
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 78, in handle_async_request
    stream = await self._connect(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_async\connection.py", line 124, in _connect
    stream = await self._network_backend.connect_tcp(**kwargs)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_backends\auto.py", line 31, in connect_tcp
    return await self._backend.connect_tcp(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_backends\anyio.py", line 113, in connect_tcp
    with map_exceptions(exc_map):
  File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
    raise to_exc(exc) from exc
httpcore.ConnectError: All connection attempts failed

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<string>", line 17, in <module>
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\__init__.py", line 337, in run
    get_driver().run(*args, **kwargs)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\fastapi.py", line 187, in run
    uvicorn.run(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\uvicorn\server.py", line 66, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Program Files\Python312\Lib\asyncio\runners.py", line 194, in run
    return runner.run(main)
  File "C:\Program Files\Python312\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 673, in run_until_complete
    self.run_forever()
  File "C:\Program Files\Python312\Lib\asyncio\windows_events.py", line 322, in run_forever
    super().run_forever()
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 640, in run_forever
    self._run_once()
  File "C:\Program Files\Python312\Lib\asyncio\base_events.py", line 1992, in _run_once
    handle._run()
  File "C:\Program Files\Python312\Lib\asyncio\events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
> File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\adapters\discord\adapter.py", line 81, in run_bot
    gateway_info = await self._get_gateway_bot(bot_info)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\adapters\discord\adapter.py", line 131, in _get_gateway_bot
    resp = await self.request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\internal\adapter\adapter.py", line 92, in request
    return await self.driver.request(setup)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\httpx.py", line 134, in request
    return await session.request(setup)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\nonebot\drivers\httpx.py", line 78, in request
    response = await self.client.request(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1540, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1629, in send
    response = await self._send_handling_auth(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1657, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1694, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_client.py", line 1730, in _send_single_request
    response = await transport.handle_async_request(request)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 393, in handle_async_request
    with map_httpcore_exceptions():
  File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "D:\Documents\个人项目\QQ-DC-Bridge\.venv\Lib\site-packages\httpx\_transports\default.py", line 118, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ConnectError: All connection attempts failed
02-04 00:18:48 [INFO] uvicorn | 127.0.0.1:14708 - "GET / HTTP/1.1" 404
02-04 00:18:49 [INFO] uvicorn | 127.0.0.1:14708 - "GET /favicon.ico HTTP/1.1" 404
02-04 00:29:41 [INFO] uvicorn | Shutting down
正在终止进程 [3304]...
02-04 00:29:41 [INFO] uvicorn | Waiting for application shutdown.
02-04 00:29:41 [INFO] uvicorn | Application shutdown complete.
02-04 00:29:41 [INFO] uvicorn | Finished server process [43708]
停止重载监视

这是配置文件,隐私信息均已做删减处理(.env.prod)

DRIVER=~fastapi+~httpx+~websockets

DISCORD_BOTS='[
    {
        "token": "MTxxxfoo4Kg",
        "intent": {
            "guild_messages": true,
            "direct_messages": true
        },
        "application_commands": {"*": ["*"]}
    }
]'

这是配置文件,隐私信息均已做删减处理(pyproject.toml)

[project]
name = "QQ-DC-Bridge"
version = "0.1.0"
description = "QQ-DC-Bridge"
readme = "README.md"
requires-python = ">=3.9, <4.0"

[tool.nonebot]
adapters = [
    { name = "Discord", module_name = "nonebot.adapters.discord" }
]
plugins = ["nonebot_plugin_discord_message_bridge"]
plugin_dirs = []
builtin_plugins = ["echo"]

MC-Nirvana avatar Feb 03 '25 16:02 MC-Nirvana

试试在 .env 文件里添加代理:DISCORD_PROXY='http://127.0.0.1:6666'

最好把日志等级调整为 TRACE,并提供全部日志。注意清除隐私信息

Autuamn avatar Feb 15 '25 14:02 Autuamn

DISCORD_PROXY='http://127.0.0.1:6666' 显示不支持啊,这需要怎么做啊 05-22 23:59:10 [WARNING] nonebot | proxy is not supported by websockets driver

RayTracingON avatar May 22 '25 15:05 RayTracingON

试试DRIVER=~fastapi+~aiohttp

Autuamn avatar May 23 '25 15:05 Autuamn

试试DRIVER=~fastapi+~aiohttp

感谢,已经可以使用了

RayTracingON avatar May 23 '25 18:05 RayTracingON