跳到主要内容
Deno 2.4 发布,带来 deno bundle、字节/文本导入、OTel 稳定版等新特性
了解更多
Netlify Edge Functions on Deno Deploy

Netlify Edge Functions 基于 Deno Deploy

我们已与 Netlify 合作,共同构建了 Netlify Edge Functions。Netlify Edge Functions 允许您在几秒钟内将代码全球部署到边缘,从而实现个性化网页内容、自定义用户身份验证以及其他用例。它基于我们的 Deno Deploy 基础设施构建,该基础设施负责处理全球路由、扩展和安全代码执行的复杂性。它让您能将更多时间用于为用户提供价值,减少基础设施维护的工作。

Netlify 是一个无服务器计算平台,用于构建和托管现代且高性能的 JAMstack 网站和应用程序。Netlify 提供了一系列简化网页开发的产品,以及一个可无缝集成到您 Git 工作流的灵活构建和部署流程。

以下是关于如何使用 Netlify 创建和部署 Edge 函数的简短指南。

设置您的本地环境

首先,请确保您使用的 Node 版本为 12.20 或更高,并安装最新版 Netlify CLI

$ npm install -g netlify-cli

接下来,创建一个新的 Netlify 站点。您可以从头开始创建,fork 这些演示站点之一,或者使用其 CLI 创建

netlify sites:create --name my-new-site

在您的本地站点目录下,通过添加此文件来创建一个新的 Edge 函数:/netlify/edge-functions/hello.js

export default () => new Response("Hello world");

让我们在 netlify.toml 中声明这个 Edge 函数。

# Other netlify settings…

[[edge_functions]]
  function = "hello"
  path = "/test"

请注意,toml 配置文件使用 glob 风格的路由。在此了解更多信息。

本地测试

$ netlify dev

您的 Edge 函数可以在 localhost:8888/test 查看。

Viewing the edge function locally.

请注意,这使用 Deno CLI 工具在本地执行您的函数。如果您尚未安装 Deno CLI 工具,Netlify CLI 会自动安装它。

将 Edge 函数部署到生产环境

在部署到生产环境之前,我们需要登录 Netlify CLI。

$ netlify login

然后,我们需要创建一个 Git 仓库并将其添加为新的 Netlify 站点

在您完成 Netlify CLI 认证并将项目链接到 Netlify 站点后,您可以使用此命令部署到生产环境。

$ netlify deploy --build –-prod

您的 Edge 函数现在可以在 /test 路由上查看。

接下来是什么?

Netlify Edge Functions 允许您为您的网站或应用程序添加高性能、低延迟的逻辑,例如根据访问者的位置动态个性化内容,以优化转化率。

为了让您更好地了解可以实现的功能,您的 Edge Functions 将能够访问标准的 Request 对象Netlify 特定的 context 对象,并且由于函数在 Deno 运行时中执行,因此还可以访问所有的 Deno Deploy API。Netlify 的 context 对象允许您管理 cookie、将请求重写到另一个 URL 等,从而让您能为用户提供出色的近距离体验。

有兴趣使用 Deno Deploy 在边缘执行您的用户代码吗?了解更多关于 Subhosting 的信息