Netlify Edge Functions 在 Deno Deploy 上
我们与 Netlify 合作构建了 Netlify Edge Functions。Netlify Edge Functions 允许您在几秒钟内将代码全局部署到边缘,从而实现个性化 Web 内容、自定义用户身份验证以及其他用例。它构建在我们的 Deno Deploy 基础设施之上,该基础设施处理全球路由、扩展和安全代码执行的复杂性。它让您可以花更多时间为用户交付价值,而花更少时间维护基础设施。
Netlify 是一个无服务器计算平台,用于构建和托管现代且高性能的 JAMstack 网站和应用程序。Netlify 提供了一系列简化 Web 开发的产品,以及一个灵活的构建和部署流程,可以直接连接到您的 git 工作流程。
这是一个关于如何使用 Netlify 创建和部署边缘函数的简短指南。
设置本地环境
首先,请确保您正在使用 Node.js 版本 12.20 或更高版本,并安装最新的 Netlify CLI。
$ npm install -g netlify-cli
接下来,创建一个新的 Netlify 站点。您可以从头开始创建,fork 这些演示站点之一,或者使用他们的 CLI 创建一个。
netlify sites:create --name my-new-site
在您的本地站点目录中,通过添加此文件来创建一个新的边缘函数:/netlify/edge-functions/hello.js
export default () => new Response("Hello world");
让我们在 netlify.toml
中声明这个边缘函数。
# Other netlify settings…
[[edge_functions]]
function = "hello"
path = "/test"
请注意,toml 配置文件使用 glob 风格的路由。在此处了解更多信息。
要在本地进行测试
$ netlify dev
您的边缘函数可以在 localhost:8888/test
查看。
请注意,这使用 Deno CLI 工具在本地执行您的函数。如果您尚未安装,Netlify CLI 会自动安装它。
将边缘函数部署到生产环境
在部署到生产环境之前,我们需要登录 Netlify CLI。
$ netlify login
然后,我们将需要创建一个 git 仓库,并将其添加为一个新的 Netlify 站点。
一旦您验证了您的 Netlify CLI 并将项目链接到一个 Netlify 站点,您就可以使用此命令部署到生产环境
$ netlify deploy --build –-prod
您的边缘函数现在可以在 /test
路由上查看。
下一步是什么?
Netlify Edge Functions 允许您为您的网站或应用程序添加高性能、低延迟的逻辑,例如根据访问者的位置动态个性化内容,以优化转化率。
为了让您更好地理解您可以实现的功能,您的 Edge Functions 将可以访问标准的 Request 对象、一个 Netlify 特定的 context
对象,并且由于该函数在 Deno 运行时中执行,因此可以访问所有 Deno Deploy API。Netlify context 对象允许您管理 Cookie、将请求重写到另一个 URL 以及其他选项,从而使您能够为您的用户提供出色的近距离体验。
有兴趣使用 Deno Deploy 在边缘执行用户代码吗? 了解更多关于子托管的信息。