mirror of
				https://github.com/nonebot/nonebot2.git
				synced 2025-10-30 14:36:41 +00:00 
			
		
		
		
	📝 Docs: 完善 调用平台 API 部分 (#1447)
				
					
				
			Co-authored-by: StarHeart <starheart233@gmail.com>
This commit is contained in:
		| @@ -14,16 +14,36 @@ options: | |||||||
|  |  | ||||||
| NoneBot 提供了两种方式来调用机器人平台 API,两种方式都需要首先获得 Bot 实例,然后调用相应的方法。 | NoneBot 提供了两种方式来调用机器人平台 API,两种方式都需要首先获得 Bot 实例,然后调用相应的方法。 | ||||||
|  |  | ||||||
| 例如,如果需要调用机器人平台的 `get_user_info` API,可以这样做: | ## 获取 Bot 实例 | ||||||
|  |  | ||||||
| ```python | ```python | ||||||
| from nonebot import get_bot | from nonebot import get_bot | ||||||
|  |  | ||||||
| bot = get_bot("bot_id") | bot = get_bot()  # 获取第一个已连接的 bot 实例 | ||||||
|  | bot = get_bot("bot_id")  # 获取指定 bot_id 的 bot 实例 | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | 在事件处理依赖中,我们可以使用更为简便的办法来获取 bot 实例,详情可以参考 [获取上下文信息-Bot](https://v2.nonebot.dev/docs/tutorial/plugin/create-handler#bot) | ||||||
|  |  | ||||||
|  | ```python | ||||||
|  | from nonebot.adapters import Bot | ||||||
|  |  | ||||||
|  | async def handle_func(bot: Bot):  # 通过依赖注入获取 bot 实例 | ||||||
|  |     ... | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## 调用 API | ||||||
|  |  | ||||||
|  | 如果需要调用某个机器人平台的 `get_user_info` API,我们可以使用以下任意一种方式: | ||||||
|  |  | ||||||
|  | ```python | ||||||
|  | # 通过 bot 实例上的魔术方法直接使用.操作符调用 API | ||||||
| result = await bot.get_user_info(user_id=12345678) | result = await bot.get_user_info(user_id=12345678) | ||||||
| await bot.call_api("get_user_info", user_id=12345678) |  | ||||||
|  | # 通过 bot 实例上的 call_api 方法调用 API | ||||||
|  | result = await bot.call_api("get_user_info", user_id=12345678) | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| :::tip 提示 | :::tip 提示 | ||||||
| API 由平台提供,请参考平台文档。 | 实际可用的 API 由平台提供,请参考平台文档。 | ||||||
| ::: | ::: | ||||||
|   | |||||||
| @@ -14,16 +14,36 @@ options: | |||||||
|  |  | ||||||
| NoneBot 提供了两种方式来调用机器人平台 API,两种方式都需要首先获得 Bot 实例,然后调用相应的方法。 | NoneBot 提供了两种方式来调用机器人平台 API,两种方式都需要首先获得 Bot 实例,然后调用相应的方法。 | ||||||
|  |  | ||||||
| 例如,如果需要调用机器人平台的 `get_user_info` API,可以这样做: | ## 获取 Bot 实例 | ||||||
|  |  | ||||||
| ```python | ```python | ||||||
| from nonebot import get_bot | from nonebot import get_bot | ||||||
|  |  | ||||||
| bot = get_bot("bot_id") | bot = get_bot()  # 获取第一个已连接的 bot 实例 | ||||||
|  | bot = get_bot("bot_id")  # 获取指定 bot_id 的 bot 实例 | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | 在事件处理依赖中,我们可以使用更为简便的办法来获取 bot 实例,详情可以参考 [获取上下文信息-Bot](https://v2.nonebot.dev/docs/tutorial/plugin/create-handler#bot) | ||||||
|  |  | ||||||
|  | ```python | ||||||
|  | from nonebot.adapters import Bot | ||||||
|  |  | ||||||
|  | async def handle_func(bot: Bot):  # 通过依赖注入获取 bot 实例 | ||||||
|  |     ... | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## 调用 API | ||||||
|  |  | ||||||
|  | 如果需要调用某个机器人平台的 `get_user_info` API,我们可以使用以下任意一种方式: | ||||||
|  |  | ||||||
|  | ```python | ||||||
|  | # 通过 bot 实例上的魔术方法直接使用.操作符调用 API | ||||||
| result = await bot.get_user_info(user_id=12345678) | result = await bot.get_user_info(user_id=12345678) | ||||||
| await bot.call_api("get_user_info", user_id=12345678) |  | ||||||
|  | # 通过 bot 实例上的 call_api 方法调用 API | ||||||
|  | result = await bot.call_api("get_user_info", user_id=12345678) | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| :::tip 提示 | :::tip 提示 | ||||||
| API 由平台提供,请参考平台文档。 | 实际可用的 API 由平台提供,请参考平台文档。 | ||||||
| ::: | ::: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user