importexpressfrom'express';importsqlite3from'sqlite3';import{open}from'sqlite';constapp=express();constport=3000;// 打开SQLite数据库asyncfunctionopenDb(){returnopen({filename:'./database.sqlite',driver:sqlite3.Database});}// 设置一个GET路由以返回SVG数据app.get('/svg/:id',async(req,res)=>{constid=req.params.id;constdb=awaitopenDb();constresult=awaitdb.get('SELECT svg_data FROM svgs WHERE id = ?',[id]);if(result){res.send(result.svg_data);}else{res.status(404).send('SVG not found');}awaitdb.close();});// 启动服务器app.listen(port,()=>{console.log(`Server is running at http://localhost:${port}`);});
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Display SVG</title></head><body><divid="svg-container"></div><script>asyncfunctionfetchAndDisplaySvg(id){try{constresponse=awaitfetch(`/svg/${id}`);if(!response.ok){thrownewError('SVG not found');}constsvgData=awaitresponse.text();document.getElementById('svg-container').innerHTML=svgData;}catch(error){console.error('Error fetching SVG:',error);}}// Fetch and display SVG with ID 1 as an examplefetchAndDisplaySvg(1);</script></body></html>