You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pywebio如何实现点击按钮重定向跳转至localhost:4200页面

PyWebIO 跨端口按钮跳转实现方案

不需要写自定义前端模板,直接用PyWebIO内置API就能实现,核心是按钮回调里触发前端原生跳转,避开框架本身的同服务路由限制。

  • 用到的组件:按钮控件用actions渲染,前端逻辑执行用run_js接口
  • 跳转逻辑:同页跳转用window.location.href赋值,新开标签页跳转用window.open
  • 避坑:别用框架自带的go_app,那个只支持同服务下的应用跳转,跨端口直接失效

完整可运行示例

from pywebio import start_server
from pywebio.input import actions
from pywebio.session import run_js

def main():
    # 页面上渲染跳转按钮
    click_res = actions('页面操作', [
        {'label': '跳转至4200端口页面', 'value': 'to_4200', 'color': 'primary'}
    ])
    if click_res == 'to_4200':
        # 执行前端跳转,当前页直接跳转到目标地址
        run_js('window.location.href = "http://localhost:4200"')
        # 要新开标签页就换成下面这行
        # run_js('window.open("http://localhost:4200")')

if __name__ == '__main__':
    # 原有服务启动配置,保持8080端口不变
    start_server(main, port=8080)

注意:如果目标4200端口的页面有跨域访问限制,需要在对应服务端放开CORS配置,否则跳转后会被目标服务拦截,和PyWebIO端逻辑无关。

内容的提问来源于stack exchange,提问作者BISHAL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 03:00:58