问题标签 [netlify-function]

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 投票
1 回答
389 浏览

instagram - Sanity.io API 从 URL 上传图片

来自 slack#help 频道的交叉帖子...

我正在为一个包含博客组件的客户端创建一个 Sanity/Nuxt 站点。他的主要营销来源是 Instagram,由于 Instagram 的 API 只允许单张图片的帖子,我试图以相反的方式进行。我正在设置一个 Netlify 函数,客户端将在其中粘贴到 Instagram 帖子的链接,该函数将使用 /?__a=1 技巧通过 URL 获取所有相关图像,以从 Instagram 获取公共数据。我想做的是从所述 Instagram 帖子中获取所有图像,将它们作为资产上传,然后使用所述上传的图像创建博客帖子。我已经修改了内置的 Netlify 函数来创建一个健全的文档,我将图像作为 arrayBuffer 提取,将其转换为“base64”,然后尝试上传。

当我尝试运行位于https://gist.github.com/jeffpohlmeyer/d9824920fc1eb522ceff6380edb9de80的文件时,我收到以下错误:

谁能建议我可以做到这一点的方法?作为替代方案,我认为我可以只链接到 Instagram 上托管的 URL,而不是在 Sanity 中托管图像,但是如果例如 Instagram 帖子更改或他想要更改封面图片,则客户很难维护,选择 URL 而不是图像会很困难。

0 投票
1 回答
559 浏览

stripe-payments - Webhook 错误:无法从标头中提取时间戳和签名 - Netlify 函数和 Stripe

一旦 checkout.session.completed 事件完成,我正在尝试控制台记录 Stripe customerID。但我收到此 400 状态代码错误“无法从标头中提取时间戳和签名”。我似乎无法找到将 Stripe 客户 ID 写入控制台日志的解决方案。

任何帮助或指针表示赞赏。这是我的代码:

当我按照注释中的建议控制台记录标题时,请在终端中获取此信息: 控制台日志(标题)

我现在可以在终端中看到客户 ID (cus_JOqbW95ulF3zx0),但我需要将其记录为 customerID 吗?当终端说 customerID 未定义时。

0 投票
1 回答
110 浏览

node.js - Netlify 函数中奇怪的 cookie 行为

我在 Netlify 上托管的 Gatsby 网站上看到了一些奇怪的 cookie 行为。在我的 Netlify 函数中,我有时会收到这样的 cookie:

而不是这样(用分号分隔符而不是逗号):

当它像第一个示例一样发送时,它会导致我的cookie.parse()代码偶尔给我一个带有单个键的对象,而该值是其余 cookie 的串联。像这样:

我可以确认在 Chrome DevTools 中,cookie 是用分号分隔符发送的(应该如此)。但是当它们最终被传递给 Netlify 函数时,它们已经变成了逗号。示例 Netlify 函数:

我似乎无法弄清楚是什么原因造成的。有人知道为什么我会在不同时间以不同格式从浏览器接收 Cookie 吗?

0 投票
1 回答
170 浏览

javascript - 在发布数据上使用 JSON.parse 时,Netlify 函数出现意外令牌错误

我正在检查 Netlify 函数,目前正在尝试实现 POST 请求。这是 netlify 函数的代码:

这是我得到的错误:

现在,如果我使用返回未解析的 event.body

这是我得到的回应:

我究竟做错了什么?

谢谢。

0 投票
0 回答
64 浏览

arrays - Busboy Content-Type 标头存在,但仍然出现错误,提示缺少 Content-Type

我正在使用 netlify 函数来制作 API。当用户提交 multipart/form-data 时,我需要使用 busboy 解析该数据。

但是当我这样做时:

我收到一条错误消息,提示缺少内容类型。但是如果我 console.log event.headerscontent-type: multipart/form-data;boundary=......是存在的。

我应该怎么做才能修复它。我netlify-lambda serve用来在本地提供功能

0 投票
0 回答
134 浏览

javascript - Netlify functions post request gets parsed locally but getting bad request error when deployed on the internet

I am handling a post request containing multipart/form-data in a netlify function using the following code:

#xA;

This is how to request looks like: enter image description here

If I run the function locally using netlify-lambda serve, the request gets parsed and I get the correct response, i.e.,

#xA;

But when I deploy the function on the cloud get 400 Bad Request error: enter image description here

This is the react code which makes the request:

#xA;

Thanks ahead of time.

0 投票
0 回答
81 浏览

reactjs - Nodemailer 适用于本地,但不适用于生产 - 错误 405

我在我的 react 项目中使用 nodemailer 和 netlify 来添加一个联系表单,从而使网站的访问者可以向网站所有者的电子邮件地址发送消息。这在本地运行时效果很好,但是当我将其部署到生产环境时出现错误 405 - 不允许。我不知道为什么会这样。

以下是相关代码,但如果需要,我可以添加其他部分。这一切都在本地完美运行的事实表明下面的代码很好,但如果有人能告诉我出了什么问题,我将不胜感激。我正在使用 Outlook,似乎找不到任何会限制这一点的设置。

出于显而易见的原因,我删除了用户身份验证详细信息。

0 投票
1 回答
453 浏览

javascript - Netlify 无服务器函数返回 404

我试图在 Netlify 上设置一个简单的无服务器函数,只是为了测试环境变量的使用。我在 Netlify 中为我的站点定义了以下两个环境变量:

变量的名称 价值
ALPHABET_SEPARATION 2
CHARS_BETWEEN 3

我还更新了我的函数目录,如下所示:

我正在使用来自 github 的持续部署。由于我目前不知道 npm 的使用,并且发现直接测试生产部署很方便,所以我myfunctions在我的根目录中定义了一个名为的子目录,并将包含“无服务器”功能的 javascript 文件放在我的本地机器上. 我已经建立了逻辑,以便仅在设置“”标志时才调用“无服务器”函数netlify,否则,将在客户端执行备用函数。基本上它的工作原理如下:

serverless 函数文件serverUpdateString.js的编码如下(它基本上将字符串中某个位置CHARS_BETWEENALPHABET_SEPARATION由(不要问为什么 - 关键是它甚至从不接收/处理请求):

当我运行它时,我收到 GET 请求的 404 错误: 控制台窗口中的错误 - script.js:43 是 const res = await fetch(myfunctions/serverUpdateString?input=ATESTSTRING, config);

在上图中,script.js:43const res = await fetch(myfunctions/serverUpdateString?input=ATESTSTRIN, config);调用文件中的行,如上面的第一个代码块所示。

我做错了什么?既然我已经正确指定了文件夹并将其放置在目录结构中的正确位置,那么 Netlify 应该能够获取无服务器功能文件吗?为了完整起见,我已经给出了整个代码,但问题似乎很简单。期待您的帮助,谢谢。

0 投票
1 回答
275 浏览

typescript - 装饰器不起作用 - TypeGraphql 和 TypeORM Netlify 函数

我正在尝试运行使用 typeorm 库的 typqgraphql 服务器。这两个库都大量使用装饰器。运行时netlify dev出现以下错误:

或者这个错误

我的根目录中有 tsconfig.json 并且还尝试将其移动到 netlify/functions 目录中。

显然 netlify 没有读取我的 tsconfig.json 文件或没有注册装饰器。

这是我的 netlify 功能

国家实体

角色实体

0 投票
1 回答
46 浏览

netlify-function - cloudconvert API 不适用于 netlify 无服务器功能

我正在使用 node JS 中的 cloudconvert api,当我在 heroku 中托管时它运行良好。但是当我创建 netlify 无服务器函数时,它返回错误。是因为无服务器功能在完成任务之前就退出了吗?