Telegram 电报发了许多复制件
我知道这是和的复制品。 然而,对这个问题没有任何充分的答案,因此: 我有一个PHP应用程序处理来自Telegram的webhook请求。然而,Telegram并没有读到webhook成功工作的消息(尽管hurl.it清楚地表明它在这样一个请求下发送了200个) 因此,我让我的机器人多次回复一条消息,因为电报还没有收到消息 这里也描述了这个问题(我正在使用的库): 然而,也没有明确的答案 我怎样才能修好它 1) 我的机器人正在使用webhook 2) 它肯定会返回200 OK响应 3) 用户从bot接收回复 更新 4) 这不是超时 我的Telegram 电报发了许多复制件,telegram,telegram-bot,php-telegram-bot,telegram-webhook,Telegram,Telegram Bot,Php Telegram Bot,Telegram Webhook,我知道这是和的复制品。 然而,对这个问题没有任何充分的答案,因此: 我有一个PHP应用程序处理来自Telegram的webhook请求。然而,Telegram并没有读到webhook成功工作的消息(尽管hurl.it清楚地表明它在这样一个请求下发送了200个) 因此,我让我的机器人多次回复一条消息,因为电报还没有收到消息 这里也描述了这个问题(我正在使用的库): 然而,也没有明确的答案 我怎样才能修好它 1) 我的机器人正在使用webhook 2) 它肯定会返回200 OK响应 3) 用户从b
getWebhookInfo
响应:
[decodedBody:protected] => Array
(
[ok] => 1
[result] => Array
(
[url] => https://bots.chatforge.me/t/test
[has_custom_certificate] =>
[pending_update_count] => 3
[last_error_date] => 1514900657
[last_error_message] => Unsupported Media Type: unsupported content-encoding
[max_connections] => 40
)
)
如果电报及时收到HTTP 200,它将不会重复请求。我猜你的请求/响应超时了。用于查看上次请求错误是什么,如果不是超时,则更新问题
似乎问题出在内容编码头上。我建议发布一些虚假数据给你的机器人,看看你收到什么内容编码头。使用我在中找到的卷曲,或者使用类似邮递员的程序
curl -v -k -X POST -H "Content-Type: application/json" -H "Cache-Control: no-cache" -d '{
"update_id":10000,
"message":{
"date":1441645532,
"chat":{
"last_name":"Test Lastname",
"id":1111111,
"type": "private",
"first_name":"Test Firstname",
"username":"Testusername"
},
"message_id":1365,
"from":{
"last_name":"Test Lastname",
"id":1111111,
"first_name":"Test Firstname",
"username":"Testusername"
},
"text":"/start"
}
}' "https://YOUR.BOT.URL:YOURPORT/"
我不知道API有这个调试选项,因为lib没有包含它。不幸的是,结果不是超时。现在更令人困惑的是:
“不支持的媒体类型:不支持的内容编码”
。我附上了问题的完整输出。事实上,我刚刚发现我的服务器正在发送内容编码:none
标题。这显然是错误的。不知道它是从哪里来的。正常(非webhook)请求返回内容编码:gzip
。嗯,让我们看看,是的,删除应用程序内部的标题完全修复了它。不知道为什么它会在那里很久。没有问题,直到现在)谁知道一个API可能会因此失败)谢谢提示!