Webhook是什么
很多三方平台都有webhook,拿line打比方
首先明确一点
我们使用line平台的机器人就必须经过line的服务器,
用户A ←→ LINE服务器 ←→ 你的机器人服务器
用户B ←→ LINE服务器 ←→ 你的机器人服务器
用户C ←→ LINE服务器 ←→ 你的机器人服务器
我们不能
❌ 用户A ←→ 你的服务器 (绕过LINE)
❌ 用户B ←→ 你的服务器 (绕过LINE)
原因是:
1. 安全控制
LINE需要:
├── 防止垃圾消息
├── 保护用户隐私
├── 控制消息频率
└── 审核机器人行为
2. 商业控制
LINE通过控制API:
├── 收取API使用费
├── 限制消息数量
├── 控制功能权限
└── 维护平台生态
3. 技术架构
LINE的聊天协议是私有的:
├── 加密算法
├── 消息格式
├── 推送机制
└── 用户认证
所有,我们必须不停的发送请求到line服务器,问他有没有新信息。有了我就拿到了。
但是这样比较耗费资源,所以设置了webhook,反向API,我有新消息了,我发给你。
这样你就不要一直轮询我了。
提高了效率。