workspace: use URLSearchParams for upload/delete

This commit is contained in:
p 2026-08-13 15:57:55 +08:00
parent 5f7ddc197a
commit c7d5e63491
2 changed files with 9 additions and 3 deletions

View File

@ -38,14 +38,18 @@ if not os.path.isdir(full_dir):
upload_url = entire_url("/pipeline-sdlc/api/workspace_upload.dspy")
# 拖拽上传脚本:读取文件 → base64 → POST → 刷新浏览器
# 拖拽上传脚本:读取文件 → base64 → form-encoded POST → 刷新浏览器
upload_script = (
"var fs=event.params.files;"
"if(!fs||!fs.length)return;"
"for(var i=0;i<fs.length;i++){"
"var f=fs[i].file;"
"var b64=await new Promise(function(res){var r=new FileReader();r.onload=function(){res(r.result);};r.readAsDataURL(f);});"
"var resp=await fetch(" + _json.dumps(upload_url) + ",{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({id:" + _json.dumps(folder_id) + ",filename:f.name,filedata:b64})});"
"var body=new URLSearchParams();"
"body.append('id'," + _json.dumps(folder_id) + ");"
"body.append('filename',f.name);"
"body.append('filedata',b64);"
"var resp=await fetch(" + _json.dumps(upload_url) + ",{method:'POST',body:body});"
"var rj=await resp.json();"
"if(rj.status!='ok'){var m=new bricks.Message({title:'上传失败',message:rj.message||'未知错误'});m.open();}"
"}"

View File

@ -44,7 +44,9 @@ async with DBPools().sqlorContext(dbname) as sor:
# 删除:删除选中文件并刷新
delete_script = (
"if(!bricks.app._ws_sel)return;"
"var resp=await fetch(" + _json.dumps(delete_url) + ",{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({id:bricks.app._ws_sel.id})});"
"var body=new URLSearchParams();"
"body.append('id',bricks.app._ws_sel.id);"
"var resp=await fetch(" + _json.dumps(delete_url) + ",{method:'POST',body:body});"
"var rj=await resp.json();"
"if(rj.status=='ok'){"
"bricks.app._ws_sel=null;bricks.app._ws_sel_el=null;"