返回介绍

cloudflare

发布于 2024-04-15 22:23:13 字数 3201 浏览 0 评论 0 收藏 0

将 Nitro 应用程序部署到 CloudFlare。

Cloudflare Workers

预设: cloudflare (switch to this preset)

**注意:**此预设使用 service-worker 语法 进行部署。

请注意: 无法通过 Cloudflare 的环境变量更新 runtimeConfig(有关更多信息,请参见 #272)。 作为解决方法,您可以在代码中使用 Cloudflare 环境变量作为常量。

登录您的 Cloudflare Workers 帐户并从侧边栏获取您的account_id

在您的根目录中创建一个 wrangler.toml

ini
name = "playground"
main = "./.output/server/index.mjs"
workers_dev = true
compatibility_date = "2022-09-10"
account_id = "<the account_id you obtained (optional)>"
route = "<mainly useful when you want to setup custom domains (optional too)>"

[site]
bucket = ".output/public"

Testing locally

预设: cloudflare_pages (switch to this preset)

**注意:**这是一个实验性预设。

零配置供应商
可以通过零配置与此提供程序集成。 (了解更多

Git integration

预设: cloudflare-module (switch to this preset)

**注意:**这是一个实验性预设。

**注意:**此预设使用 模块语法 进行部署。

模块语法允许您使用 Durable ObjectsD1waitUntil。 您可以通过“event.context.cloudflare”访问模块绑定和上下文。

例如,在您的 wrangler.toml 中添加以下内容:

ini
services = [
  { binding = "WORKER", service = "<service name>" }
]
d1_databases = [
  { binding = "D1", database_id = "<database id>" }
]

Using waitUntil

waitUntil 允许在不阻塞事件的情况下进行缓存写入、外部日志记录等。

ts
// waitUntil 允许在不阻塞事件的情况下进行缓存写入、外部日志记录等
const { cloudflare } = event.context
cloudflare.context.waitUntil(logRequest(event.node.req))

Access env and bindings

js
const { cloudflare } = event.context
const res = await cloudflare.env.WORKER.fetch('<worker URL>')

D1 usage

ts
const { cloudflare } = event.context
const stmt = await cloudflare.env.D1.prepare('SELECT id FROM table')
const { results } = await stmt.all()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文