#3087·onlook

[错误] 在免费版 CodeSandbox 上, Penpal 连接超时 — 信任插屏未自动绕过,预加载脚本未注入

作者: arogers2创建于 2026年3月4日更新于 2026年3月4日
标签bug

□ 说明

当在自托管的 Onlook 中打开一个项目页面时,帆布 iframe 无法建立与 CodeSandbox 沙盒预览的 Penpal 连接 。 iframe 显示 CodeSandbox 自由层信任间距( “ 您正在打开 CodeSandbox 预览, 您想要继续吗 ”) , 而不是直接装入应用程序 。 即使在手动点击"是的,继续预览"之后,Penpal的连接时间在30秒后就会中断.

□ 根源

有两个问题促成了这一点:

  1. ** 国家安全委员会的信任互不自动通过。 ** 在apps/web/client/src/server/api/rooters/project/project.ts'(第87-91行)中,有评论出局代码可以点击QQBtn-answer-yes'按钮,但不活动:
zz
// 可选: 添加动作以单击 CSB 自由级的按钮
// const   csbfree Actions = [{] (中文(简体) ).
// 类型:“ 单击” ,
// 选择 : '# btn- answer- yes' ,
//};

2. 未注入沙盒的预装脚本. 解析相间后, Iframe 中的app loads 但 on look-preload-scription.js 似乎不会被注入到沙盒的公开/目录中,或者在根版式中被引用. 没有预装脚本,孩子侧的Penpal连接()永远不会起火,所以家长会出局.


重现的步骤
自主机 On look 跟踪开发设置文件
创建或导入 Next.js 项目
打开工程页面并导航到任意路径( 如 / 浏览)
在 Iframe 中观察 CSB 信任间断
点击“ 是, 继续预览 ”
等待 30 秒 — Penpal 连接时间已过期
错误
3000ms 后 Pepal 连接超时
(sc/app/project/[id]/ 组件/canvas/frame/view.tsx:140:33)

预期行为
iframe应直接加载沙盒预览(通过通过或自动接受 CSB 信任互接),并预装出注入的脚本,使彭帕勒握手成功.

环境
自办Onlook(最新主要分支)
视窗 11
Next.js 16.0.7 (土包子)
代码框自由分级

内容来源: onlook-dev/onlook