如何通过Web浏览器向远程服务器(IP)发送POST请求?及Telegram Bot邮件验证的服务器请求发送方案咨询
刚好我之前做过类似的Telegram Bot验证功能,来帮你一步步解决这两个问题:
不需要复杂工具,浏览器本身就有几种简单方法:
方法一:开发者工具控制台直接发送
打开浏览器开发者工具(按F12或Ctrl+Shift+I),切换到「Console」标签,用JavaScript的Fetch API写一段请求代码就行。举个实际例子:fetch('http://你的服务器IP:端口号/自定义路径', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ telegram_id: 123456, action: 'verify' }), // 替换成你要传的数据 }) .then(res => res.text()) .then(data => console.log('服务器响应:', data)) .catch(err => console.error('请求出错:', err));注意:如果服务器用HTTPS,要把
http换成https,同时确保服务器的端口已经在VPS防火墙里放行。方法二:临时HTML表单提交
写个简单的本地HTML文件,用表单触发POST请求:<form action="http://你的服务器IP:端口号/脚本路径" method="POST"> <input type="hidden" name="telegram_id" value="用户的TelegramID"> <button type="submit">发送验证请求</button> </form>保存后用浏览器打开,点击按钮就能直接发送POST请求到服务器。
方法三:重放已有请求
如果之前有过请求记录,在开发者工具的「Network」标签里找到目标请求,右键选「Copy」→「Copy as fetch」,粘贴到控制台修改参数后执行,也能快速发送POST请求。
先给你吃个定心丸:完全不需要搭建完整网站,只要在VPS上运行一个能接收HTTP请求的轻量脚本就行。核心思路是让脚本监听某个端口,处理来自验证按钮的请求。
具体步骤:
第一步:在VPS上部署轻量HTTP服务脚本
推荐用Python的Flask框架(轻量、易上手),步骤如下:
- 安装Flask:
pip install flask - 写一个处理验证请求的脚本(比如命名为
bot_verify.py):from flask import Flask, request, jsonify app = Flask(__name__) # 定义处理验证请求的路由 @app.route('/verify-user', methods=['POST']) def handle_verify(): # 获取请求里的Telegram ID(支持表单或JSON格式) telegram_id = request.form.get('telegram_id') or request.json.get('telegram_id') if not telegram_id: return jsonify({"status": "fail", "msg": "缺少Telegram账号信息"}), 400 # 这里写你的核心逻辑:比如把用户ID加入待批准列表 # 示例:写入本地文件记录 with open('pending_users.txt', 'a', encoding='utf-8') as f: f.write(f"{telegram_id}\n") # 返回给用户的响应 return jsonify({"status": "success", "msg": "验证请求已提交,请等待管理员批准"}), 200 if __name__ == '__main__': # 让脚本监听所有外部IP,端口选5000(记得防火墙放行) app.run(host='0.0.0.0', port=5000, debug=False) - 后台运行脚本:用
nohup python bot_verify.py &,这样关闭终端后脚本也能继续运行;或者配置systemd服务,更稳定。
第二步:生成验证按钮的链接
给用户发邮件时,把验证按钮指向你的VPS IP+端口+路由。为了更友好,你可以做一个自动提交的HTML页面(直接嵌入邮件或者托管到免费静态空间):
<!DOCTYPE html> <html> <body> <p>正在验证你的Telegram账号,请稍候...</p> <form id="verifyForm" action="http://你的VPS_IP:5000/verify-user" method="POST"> <input type="hidden" name="telegram_id" value="用户的TelegramID"> </form> <script> // 页面加载后自动提交表单 window.onload = () => { document.getElementById('verifyForm').submit(); }; </script> </body> </html>
用户点击邮件里的按钮,就会跳转到这个页面,自动向你的VPS脚本发送POST请求。
第三步:处理批准逻辑
脚本收到请求后,你可以定时查看pending_users.txt,然后手动把用户ID加入Bot的白名单;也可以扩展脚本,比如当有新请求时,用Telegram Bot给你发一条提醒消息,让你一键批准。
安全小贴士:
- 建议给服务配置HTTPS(用Let's Encrypt免费证书),避免数据被拦截,Flask可以配合Nginx+Gunicorn实现。
- 不要用
debug=True运行生产环境脚本,避免安全漏洞。 - 可以给请求加个密钥参数(比如
?key=你的自定义密钥),防止恶意请求。
内容的提问来源于stack exchange,提问作者Almaz Suleymanov




