【发布时间】:2017-12-10 13:01:52
【问题描述】:
最近我遇到了一个我以前没有遇到过的电报 bot api 问题......我使用 Webhook 连接方法来捕获机器人请求并使用 PHP 脚本重新发送,有时触发的脚本需要一分钟以上才能完成处理.大约一个月前,一切正常,电报机器人等待足够长的时间让脚本完全执行,但现在我的连接暂停,我在执行 60 秒后通过电报 api“读取超时过期”收到此 Webhook 错误,然后它尝试相同再次请求,这些一直持续到我的服务器因打开的条目过多而过载......我已经尝试过connection-handling,尽管它似乎没用,因为我的连接不是浏览器端。我意识到它应该与 Webhook 的设置本身有关,但我无法弄清楚......有什么想法吗?
这里有一些可以给你的数字:
我的代码:
<?php
...running hundreds of thousands of multi-curl requests that take 10 min for example
...or/ sleep(61);
...or/ basically anything that takes more than 60 seconds to run
?>
运行上述脚本 60 秒后,Telegram 对我的 Webhook 状态的响应:
{"ok":true,"result":{"url":"https://????.com/??.php","has_custom_certificate":false,"pending_update_count":1,"last_error_date":1499351442,"last_error_message":"读取超时过期","max_connections":40}}
【问题讨论】:
-
欢迎来到 SO!请查看以下帖子并适当更新问题:stackoverflow.com/help/how-to-ask
-
嘿 garfbradaz,tnx!我确实事先阅读了手册并尝试相应地写我的帖子,但无论如何我都是新手......你能更具体吗?
-
嘿@Samuel - 请发布一些您尝试过的示例代码以及遇到的任何错误。它有助于表明您已尝试解决问题以及您在哪里做错了。祝你好运,享受 SO 社区。span>
-
感谢@garfbradaz 的提示 :)
-
或者,现在我正在安排对 cronjob 的长响应请求,并每分钟检查一次。但即使我也能看出这不是解决方案!
标签: php timeout telegram-webhook