我想在我的本地机器上测试一个电报机器人。
我使用网络挂钩和 .net core 3.0。要访问 Telegram API,我使用 Telegram.Bot。在俄罗斯,无法访问 Telegram.API,您必须使用 VPN。
我开始 ngrok 但遇到了问题。来自电报的发布请求不会到达本地机器。但是得到我让自己到 ngroka 地址的请求工作正常。
我使用以下命令启动 ngrok:ngrok http 54823 -host-header="localhost:54823"54823 - 在 iss 上启动项目的端口,而不是用于 ssl 的端口。
然后我得到了一个链接:https://5bf38bda.ngrok.io
并发送请求:get: https://5bf38bda.ngrok.io/api/message/update这个请求激活了控制器内部的断点。然后他从 Telegram 客户端给了一个命令,即他发出了一个 post 请求,ngrok 将其重定向,但不会重定向到本地机器。
这些请求的 X-Forwarded-For 字段是不同的。获取 - 转到我的 vpn 的 ip,然后发布 - 不清楚在哪里。这可能是问题吗?我什至可以以这种方式将 ngrok 与 vpn 一起使用吗?还是会敲vpn地址?


我不会说我是对的,但我想分享我的经验:) 我遇到了同样的问题,电报的请求没有到达服务器,这里的重点不在Web 服务器,但事实上提供商只是阻止了它们,t.e. 不仅从客户端到电报 API 的请求被阻止,而且在相反的方向上也被阻止。将 grock 更改为一些 VDS,我认为它对你有用......此外,据我所知,电报有端口限制,如果没有任何改变,你只能使用 443、80、88 或 8443。 .
这里详细解释一下 web hooks