问题标签 [cloudflare-workers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
203 浏览

node.js - Cloudflare worker 生成 smime 签名

使用 node-forge 生成 smime (CMS) 签名在 Cloudflare Worker Editor 上运行良好,但是当我部署代码时,出现 CPU 超时(错误 1102)。所以,我假设,当我打电话signature.sign({ detached: true });时,生成签名只需要时间。我正在使用Business: 50ms.

所以,

  1. 是否可以通过设置任何属性来增加节点锻造过程?
  2. 除了 node-forge 之外,我还有其他选择吗(期待一些例子,我研究 pkijs)

寻找指导方针。

0 投票
1 回答
731 浏览

rust - Cloudflare Workers 中的 WebAssembly 实例化内存不足

我正在使用 Rust 构建一个 WebAssembly 模块,以在 Cloudflare Workers 中使用,通过wasm-bindgen. 该模块总体上非常基础;它有一个名为 的函数process,它将两个二进制文件(由两个 Uint8BitArray 表示)和一个 json_value(由 解释serde)作为输入,并产生 None 或字符串,通常是这样的。

实例化 WebAssembly 模块的胶水代码与wasm-bindgen --no-modules命令几乎相同,我只将第 93 行的初始化条件更改为true

我使用cloudworker试用了整个脚本,它运行没有问题。然后,我使用Preview Service API尝试了相同的脚本,并且它在几次尝试中运行良好,直到它开始抛出错误:

这发生在实例化时,无论发送的请求如何(初始化后发生的事情不是 .

我一直在尝试精简我的 Webassembly 脚本,但即使是 hello-world 类型的函数也被拒绝了。我不知道如何调试,这与胶水代码,锈代码或Cloudflare的预览服务有关吗?

0 投票
1 回答
292 浏览

node.js - 错误代码:10021,错误消息:“Uncaught TypeError: n(...).connect is not a function”

我正在尝试将猫鼬包与 Cloudflare 工作人员一起使用。webpack 之后当我使用无服务器部署进行部署时,我收到此错误消息。

在线 950

我的主要代码是

我也试过 mongodb 包。显示同样的问题。

0 投票
1 回答
2403 浏览

node.js - 如何修改请求正文

我正在向工作人员发送 Post 请求。帖子正文内容。

如果 name2=value2 那么我想修改它:

我正在使用这个脚本。

如果我 json.parse(r.body) 它不起作用。我怎样才能做到这一点?我听说 r.body 是一个 ReadableStream 那么如何修改它。请帮忙。谢谢。

0 投票
0 回答
194 浏览

cloudflare - App Workers 导致缓存总是报告 CF-Cache-Status: HIT

我有一个使用工人的 Cloudflare 应用程序:https ://www.cloudflare.com/apps/logflare

当它安装在我的测试站点上时,每个请求都会在标题中报告 CF-Cache-Status: HIT。

然而,工人发送的日志似乎报告了他们应该报告的事情。

这里唯一的问题是我有用户问为什么他们在使用我的 Cloudflare 应用程序时缓存命中率是 100%。

只是在这里寻找正确的答案。

我已通过卸载并重新安装该应用程序来验证这一点。

0 投票
1 回答
120 浏览

cloudflare - App Worker 和 Custom Worker 冲突

我的 Cloudflare App 工作人员似乎与用户自定义工作人员发生冲突。基本上,当他们安装了他们的工作人员并安装了我的应用程序时,他们的网站根本没有响应。

我不确定是什么原因造成的。我的工作人员根本没有修改请求。他们是,但我没有看到任何明显的东西。

我在他的允许下把他的工人派到了这里。

他们的工人:

我的工人(通过我的 Cloudflare App安装):

0 投票
1 回答
1951 浏览

http - 如何在 Cloudflare Workers 中不丢失 301 https 重定向的引用值

我正在尝试使用 cloudflare 工作人员通过 301 重定向从 HTTPS 域A 到 HTTPS 域B 传递 Ref(f)erer。

1)用户在浏览器地址字段中输入https://domainA.com,这样的请求头被发送到服务器:

来自 Chrome DevTools 的请求标头

然后,此请求由此类 Cloudflare 工作人员处理:

此代码生成这样的 HTTP 响应:

在此处输入图像描述

看起来“到目前为止一切都很好” - 推荐人策略标头已设置并正在出现,但在请求/响应标头之前 Chrome 显示同一请求的“常规”信息:

在此处输入图像描述

据我了解,^ 是请求/响应组合的快速摘要。此推荐人政策:no-referrer-when-downgrade 行在哪里到达那里?是 Chrome 的默认请求参数还是 Chrome 默认将其添加到响应中?或者这些是 Cloudflare 的一些默认设置?我想这是我无法通过推荐人的潜在原因之一。

然后 302 重定向加载 domainB 并且此请求由第二个工作人员处理:

第二个请求/响应如下:

在此处输入图像描述

但是来自 domainB 的响应如下所示:

在此处输入图像描述

虽然我期待看到 Testinf 推荐人: domainA.com 。我将如何实现这一目标?

谢谢!

0 投票
1 回答
1495 浏览

javascript - Cloudflare Worker TypeError:一次性使用主体

我正在尝试使用Cloudflare Worker将 POST 请求代理到另一台服务器。

它抛出了一个 JS 异常——通过包装在一个 try/catch 博客中,我已经确定错误是:

TypeError: A request with a one-time-use body (it was initialized from a stream, not a buffer) encountered a redirect requiring the body to be retransmitted. To avoid this error in the future, construct this request from a buffer-like body initializer.

我原以为这可以通过简单地复制响应来解决,这样它就不会被使用,就像这样:

return new Response(response.body, { headers: response.headers })

那是行不通的。我在这里错过了流式传输与缓冲的什么?

0 投票
1 回答
472 浏览

cloudflare - Cloudflare 会话

我想在我的网站上添加一个类似于这样的功能:

当新会话开始时,请查看 utm_source/utm_medium 查询字符串值以及引用者。基于该显示网站的不同电话号码,例如 google cpc、bing cpc、google organic、bing organic 将有不同的号码。

然后,每个号码的呼叫次数应指示哪个流量源产生了呼叫。

问题是,因为我们使用的是 couldflare,如果从缓存中为用户提供了一个页面,那么源服务器上就没有 session_start 事件。

有没有办法解决这个问题?无论如何,是否可以在 cloudflare 本身上执行此操作,也许使用它的“工人”?

谢谢

0 投票
1 回答
210 浏览

javascript - cloudflare js worker 允许国家列表并阻止其余国家

我正在尝试将以下代码调整为如果列表中的国家/地区则允许,如果没有则阻止,当前代码如果列表中的国家/地区则阻止,如果不是则允许

调整这个的任何提示