云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

云数据库_大数据服务器_12月免费

小七 141 0

不是那么静态。。。向Cloudflare Workers介绍HTMLRewriter API Beta版

今天,我们很高兴地宣布HTMLRewriter beta版——一个流式HTML解析器,它有一个易于使用的、基于选择器的JavaScript API,用于DOM操作,Cloudflare Workers提供了这种API运行时。For你们这些不熟悉的人,Cloudflare Workers是一个轻量级的无服务器平台,允许开发人员利用Cloudflare的网络来扩充现有应用程序或创建全新的应用程序,而无需配置或维护基础设施。静态上周五我们发布了Workers站点:一个内置于Wrangler CLI工具。现在,与HTML重写器API配合使用,您可以在Cloudflare上的静态HTML之上执行DOM转换边缘。你以前可以通过将整个响应体摄取到Worker中来实现这一点,但是,该方法容易引入一些问题。首先,解析一个大文件必然会遇到内存或CPU限制。另外,它会影响您的TTFB,因为主体不再是流式的,并且浏览器将无法进行任何推测性的解析来加载后续的内容资产.HTMLRewriter是让你的应用程序完全处于边缘状态所缺少的一个部分。您可以在Cloudflare Workers上构建API,将前端的静态元素托管在Workers站点上,并使用HTMLRewriter动态地将它们绑定在一起API。输入你可能在想"等等!",JavaScript,serverless api…这听起来有点耳熟了。听起来我们也很熟悉。pic.twitter.com/1yWAxV6KMK-史蒂夫克拉布尼克(@stevenklabnik)2019年9月27日这是JAMStack吗?首先,让我们回答一个问题-什么是JAMStack?JAMStack是mathiasbiilmann创造的一个术语,它代表JavaScript、api和标记。JAMStack应用程序的扩展非常容易,因为它们依赖于简化的静态站点部署。它们还旨在简化web开发工作流程,特别是对于前端开发人员来说,通过将传统上发生在后端的数据操作和呈现引入前端,并且只通过API与后端交互打电话。所以从这个角度来说,是的,这就是JAMStack。然而,HTMLRewriter将这个想法向前推进了一步更进一步的边缘:不完全是客户端,也不是服务器大多数JAMStack应用程序依赖于对第三方api的客户端调用,在第三方api中可以使用JavaScript在客户端处理渲染,从而允许前端开发人员使用他们已经熟悉的工具链和语言。然而,这意味着每次加载页面时,客户端都必须转到源代码,等待HTML和JS,然后在被解析和加载后对api进行多次调用。此外,所有这一切都发生在客户端设备上,这些设备不可避免地比服务器功能弱,而且可能会有不稳定的最后一英里连接。使用HTMLRewriter在Workers中,您可以从边缘进行那些API调用,在那里失败的可能性比在客户端设备连接上要小得多,并且结果通常可以被缓存。更好的是,您可以在Workers中自己编写API,并可以将结果直接合并到HTML中—所有这些都在同一个强大的边缘机器上。使用这些机器使用HTMLRewriter执行"边缘渲染"总是尽可能靠近您的最终用户,而不会发生在设备本身上,并且它消除了一直到起源。什么HTMLRewriter API看起来像吗?HTMLRewriter类是一种类似jQuery的体验,直接位于Workers应用程序内部,允许开发人员构建功能强大的应用程序,依靠强大的JavaScript API进行解析和转换HTML.下面是如何使用HTMLRewriter将网页上的链接从HTTP重写到HTTPS.const重写器=新HTMLRewriter().on('a.avatar',{element:e=>rewriteUrl(e,'href')}).on('img',{element:e=>rewriteUrl(e,'src')});异步函数handleRequest(req){const res=等待获取(req);返回重写器.transform(资源);}在上面的示例中,我们创建了HTMLRewriter的一个新实例,并使用选择器查找a和img元素的所有实例,并在href和src属性上调用rewriteURL函数分别是国际化和本地化教程:如果你想更进一步,我们有一个完整的教程,教你如何使你的应用程序友好地使用HTMLRewriter。正在获取开始如果您已经在使用Cloudflare Workers,您可以通过查阅我们的文档(无需注册或任何其他要求!)来开始使用HTMLRewriter。如果您是Cloudflare Workers的新手,我们建议您先在这里注册。如果您对HTMLRewriter工作原理的细节感兴趣,并且对解析DOM有着前所未有的了解,请继续关注。我们很高兴将来能与您分享细节一号邮递员最后一件事,你不仅限于工人网站。由于Cloudflare Workers可以部署为任何应用程序前面的代理,因此您可以使用HTMLRewriter作为一种优雅的方式来扩充现有站点,并轻松添加动态元素,而不管后端如何。我们很高兴收到你的来信!我们总是根据客户的反馈不断改进我们的产品!请填写我们关于你的经历的调查问卷来帮助我们。你和工人们一起做了些有趣的事吗?告诉我们@CloudflareDev!