0

我正在尝试使用 netlify lambda 函数为对话流构建后端,否则该网站应该是托管在那里的静态生成的基于 nuxt.js 的登录页面。创建一个简单的解析函数效果很好,在 Google 上读取和解析用于身份验证的凭据没有问题,但是当尝试需要 dialogflow 库时就会出现问题。在浏览器中我得到错误Function invocation failed: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type number

运行时netlify-lambda serve我收到警告:

WARNING in /mnt/c/Projects/deploy-landing/node_modules/google-gax/node_modules/semver/index.js 3:51-64 Critical dependency: the request of a dependency is an expression.

据我了解,netlify-lambda 正在尝试在 dialogflow 模块上使用 webpack,而该模块又具有一些需要节点样式动态模块名称解析的依赖项。有没有办法解决这个问题?

4

1 回答 1

0

我创建了一个文件webpack.functions.js

module.exports = {
  externals: { dialogflow: 'dialogflow' }
};

然后在package.json我修改了我运行的脚本以启动 lambda 函数以使用此配置文件:

{

  "scripts": {
    "lambda-build": "netlify-lambda build --config ./webpack.functions.js \"./netlify/dev\""
    ...
  }
  ...
}

据我了解,netlify 现在不捆绑对话流,而是将其用作节点模块。一种或另一种方式 - 它正在工作。

于 2020-01-15T11:15:28.357 回答