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

Playwright中page.reload([options])方法的详细作用及用法是什么?

Playwright page.reload() 方法详解

功能说明

page.reload() 是 Playwright 提供的页面刷新API,行为和浏览器地址栏旁的刷新按钮完全一致,会重新请求当前页面的所有资源、重新渲染DOM并执行页面脚本,默认会等待页面加载完成后再返回结果。

page.reload参数示意图

可配置参数

所有参数均为可选,传入对象形式配置即可:

  • timeout:刷新操作的超时时间,单位为毫秒,默认读取全局配置的 navigationTimeout 值,超时未完成会抛出错误,设为0时禁用超时判断
  • waitUntil:指定刷新操作的完成判定节点,可选值如下:
    • load:默认值,等待页面load事件触发完成
    • domcontentloaded:等待页面DOMContentLoaded事件触发完成
    • networkidle:等待500ms内网络请求数量≤0时判定完成
    • commit:收到服务器响应、导航提交即判定完成,无需等待资源加载
  • hard:布尔值,是否开启硬刷新,开启后会绕过浏览器本地缓存直接从服务器拉取所有资源,对应浏览器Ctrl+Shift+R的刷新效果,默认值为false

代码示例

基础用法:

// 普通刷新,默认等load事件完成
await page.reload()

带参数用法:

// 硬刷新,等待网络空闲,超时时间设为10秒
await page.reload({
  hard: true,
  waitUntil: 'networkidle',
  timeout: 10000
})

使用注意事项

  • 页面内未提交的表单输入内容刷新后会默认丢失,若有数据保留需求需在刷新前做本地存储等预处理
  • 如果页面监听了beforeunload事件会弹出离开确认弹窗,直接调用reload会被阻塞,需要提前通过page.on('dialog')监听并处理弹窗
  • 刷新后原有页面的所有DOM节点都会失效,之前获取的元素定位句柄会无法使用,需要在刷新完成后重新定位元素
  • 单页应用(SPA)调用刷新后会重置路由内的临时状态,行为和直接访问当前路由地址完全一致
  • 硬刷新会增加服务器请求压力,非必要场景不建议频繁开启hard参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 10:06:02