生成器默认监听 0.0.0.0,局域网/手机可直接打开
- serve.py:--host 默认改 0.0.0.0;启动时列出所有网卡地址(0.0.0.0 不能直接点开); --host 127.0.0.1 仍是「只给本机」的收紧方式,README 说明公共网络用它。 - 改单线程为 ThreadingTCPServer:上传几 MB 的图会占住连接,单线程时 iframe 预览 和其它请求都得排队。 - 写接口加同源校验(Origin 与 Host 比对,无 Origin 放行):挡住同网段里「另一个网页 借访客浏览器发写请求」,curl / 脚本不受影响。 - index.html:提示文案不再写死 127.0.0.1,改用 location.host —— 用局域网地址打开时 不该反过来提示「请用 127.0.0.1 打开」。 - mock_s3.py 加 --host(默认仍回环),便于在别的设备上联调。
This commit is contained in:
@@ -294,7 +294,7 @@
|
||||
<b>需要本地服务才能预览真实页面</b>
|
||||
<span>在项目根执行:</span>
|
||||
<code>python dev/theme-builder/serve.py</code>
|
||||
<span>然后打开 http://127.0.0.1:8777/dev/theme-builder/</span>
|
||||
<span>然后打开 serve.py 启动时打印的地址(本机 127.0.0.1,局域网用本机 IP)</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="out" id="out"></div>
|
||||
@@ -433,6 +433,9 @@ function blankScope(k){
|
||||
SCOPES.forEach(s => { S.scopes[s.k] = blankScope(s.k); });
|
||||
|
||||
/* ---------------------------- 小工具 ---------------------------- */
|
||||
/* 当前访问地址。局域网里用 http://192.168.x.x:8777 打开时,提示文案不该再写死 127.0.0.1 ——
|
||||
否则用户明明已经打开了,却被告诉「请用 127.0.0.1 打开」。 */
|
||||
const HERE = location.protocol + '//' + location.host + '/dev/theme-builder/';
|
||||
const $ = id => document.getElementById(id);
|
||||
const esc = s => String(s).replace(/[&<>"]/g, c => ({'&':'&','<':'<','>':'>','"':'"'}[c]));
|
||||
const clamp = (v,a,b) => Math.min(b, Math.max(a, v));
|
||||
@@ -879,7 +882,7 @@ function onFrameLoad(){
|
||||
$('empty').style.display = 'flex';
|
||||
$('conn').className = 'conn bad';
|
||||
$('conn').textContent = '需要本地服务';
|
||||
out('无法访问 iframe 的 DOM。请用 python dev/theme-builder/serve.py 启动,再用 http://127.0.0.1:8777/dev/theme-builder/ 打开。', 'e');
|
||||
out('无法访问 iframe 的 DOM。请用 python dev/theme-builder/serve.py 启动,再用 ' + HERE + ' 打开。', 'e');
|
||||
return;
|
||||
}
|
||||
$('empty').style.display = 'none';
|
||||
@@ -3338,7 +3341,7 @@ function boot(){
|
||||
if (restored){
|
||||
log('已恢复上次的草稿(换 slug / 项目时可点「打开工程」,或加 ?fresh=1 从空白开始)。', 'ok');
|
||||
} else {
|
||||
out('在项目根执行 python dev/theme-builder/serve.py,用 http://127.0.0.1:8777/dev/theme-builder/ 打开,才能预览真实页面。');
|
||||
out('在项目根执行 python dev/theme-builder/serve.py,用 ' + HERE + ' 打开,才能预览真实页面。');
|
||||
}
|
||||
|
||||
$('preview').addEventListener('load', onFrameLoad);
|
||||
|
||||
Reference in New Issue
Block a user