飞书接口说明

https://open.feishu.cn/app/cli_a408f2e0f5f9d00e/event
请填写 URL 以使订阅生效。填写后,飞书服务器会向其发送一个 HTTP POST 以验证地址有效期,请求格式为 JSON ,带 CHALLENGE 参数。应用接收此请求后,需要解析出 CHALLENGE 值,并在 1 秒内回复 CHALLENGE 值
飞书接口说明_第1张图片
将你的接口对应的公网地址给填上,当有人给机器人发消息的时候,飞书服务器会发送请求给这个地址,你在接收到请求后需要立即返回200的状态码

推送周期和频次

订阅的事件发生时,飞书将会通过 HTTP POST 请求发送 JSON 格式的事件数据到预先配置的请求地址。
应用收到 HTTP POST 请求后,需要在 3 秒内以 HTTP 200 状态码响应该请求。否则飞书开放平台认为本次推送失败,并以 15秒、5分钟、1小时、6小时 的间隔重新推送事件,最多重试 4 次。
从上述描述可以看出,事件重发的最长时间窗口约为 7.1 小时,请检查和处理在 7.1 小时内的重复事件。可以使用如下方式判断事件唯一性:

  • 对于 1.0 版本的事件,通过事件结构中的 uuid 字段判断事件唯一性。
  • 对于 2.0 版本的事件,通过事件结构中的 event_id 字段判断事件唯一性。下面对事件结构进行了详细介绍。

https://fastapi.tiangolo.com/tutorial/background-tasks/
您可以定义返回响应_后_要运行的后台任务。
这对于需要在请求之后发生的操作很有用,但客户端实际上不必等待操作完成才能收到响应。
当处理完任务再发送请求会导致超时,所以使用fastapi提供的background-task方法可以先返回200状态码,在处理请求,就不会有服务器重复发送请求的情况了

你可能感兴趣的:(随笔,飞书)