Flask带指定端点跳转二维码应用:扫码无法正常跳转问题
Flask二维码跳转失败的解决方案
问题根源
你生成的二维码指向的是http://127.0.0.1:5000/redirect,这个地址是本地回环地址,仅能在运行Flask服务器的电脑上访问。手机扫码时,会尝试访问手机自身的127.0.0.1,而不是你的电脑,所以无法连接到Flask端点。
修复步骤
获取电脑的局域网IP地址
- Windows:打开命令提示符,执行
ipconfig,找到「无线局域网适配器WLAN」或「以太网适配器以太网」下的「IPv4地址」,格式类似192.168.1.100。 - Mac/Linux:打开终端,执行
ifconfig或ip addr,找到对应网络接口的inet地址。
- Windows:打开命令提示符,执行
修改代码中的服务器地址
将代码里的server_url替换为你的局域网IP:server_url = "http://192.168.1.100:5000/redirect" # 替换成你的实际IP让Flask监听所有网卡
在代码末尾添加启动代码,指定host='0.0.0.0',允许局域网内设备访问:if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)重新生成二维码并测试
运行代码生成新的二维码,确保手机和电脑连接在同一个WiFi网络下,扫码即可正常跳转。
额外注意事项
- 若仍无法访问,检查电脑防火墙是否开放了5000端口,必要时临时关闭防火墙测试。
- 不要使用
localhost作为二维码地址,同样存在本地访问限制。
内容的提问来源于stack exchange,提问作者whoami
相关产品推荐
相关产品推荐

