Python Cloudflare Worker 上 JavaScript 运行 中的代码

Python Code in a JavaScript running on a Cloudflare Worker

我正在构建一个显示 svg 文件的工作器,该文件是使用 python 代码 triangles.py 生成的。在这个 python 代码中,我有一个函数:

getSVGCode(vw, vh):
    ⋮
    callingOtherFunction(inThisFile)
    ⋮
    return svgCode

此函数需要从 Cloudflare Workers 上 运行ning 的 javascript 调用(使用下面给出的方法)。 svgCode 被插入到 html 字符串中,javascript returns 到浏览器。

const html = `<!DOCTYPE html>
<body>
  <h1>Hello World</h1>

  <svg>My svg here</svg>

  <p>This markup was generated by a Cloudflare Worker.</p>
</body>`

async function handleRequest(request) {
  return new Response(html, {
    headers: {
      "content-type": "text/html;charset=UTF-8",
    },
  })
}

addEventListener("fetch", event => {
  return event.respondWith(handleRequest(event.request))
})

所以,我想知道一种获取 Javascript 代码以将视口尺寸(vhvw)传递给 python 函数的方法,以便可以使用此大小生成 svg。如果这个选项不可行,我将不得不调整 svg 的大小,它看起来会被拉伸。我也想知道如何使 Worker 运行 也成为 javascript 中的 python 代码。

我是编码初学者,javascript 尤其如此。请提供完整信息,以便我理解您的回答。谢谢!

所以,我想我可以在 html 变量中使用 <script></script>。我使用了类似下面的内容。

<script>
    const vw = document.documentElement.clientWidth;
    const vh = document.documentElement.clientHeight;
    var svgHref = "https://your.url.here/using?height=vh&ampwidth=vw";
    document.getElementById("triangles-svg").src = svgHref;
</script>

这伴随着 body 和

<body>
    <img id="triangles-svg">
</body>

中提琴。 :)