Javascript Netflify lambda函数在本地工作,但不在生产中

Javascript Netflify lambda函数在本地工作,但不在生产中,javascript,node.js,aws-lambda,netlify,Javascript,Node.js,Aws Lambda,Netlify,我试图使用netlify及其lambda函数特性来运行节点函数。基于,我的函数/submission-created.js中有: const https = require("https"); exports.handler = async event => { const email = JSON.parse(event.body).payload.data.EMAIL const asking = JSON.parse(event.body).payload.d

我试图使用netlify及其lambda函数特性来运行节点函数。基于,我的函数/submission-created.js中有:

const https = require("https");

exports.handler = async event => {

const email = JSON.parse(event.body).payload.data.EMAIL
const asking = JSON.parse(event.body).payload.data.ASKING

var formData = {
    'email': email,
    'first_name': '',
    'last_name': asking,
    'lists[]': 'NUM'
};
var encoded = Object.entries(formData).map(([k, v]) => `${k}=${encodeURIComponent(v)}`).join("&");

var endpoint = 'https://api.sendfox.com/contacts/?' + encoded;

const data = JSON.stringify(formData);
const options = {

    method: 'POST',
    connection: 'keep-alive',

    headers: {
    'Authorization': 'Bearer hhhhh',
    'Content-Type': 'application/json',
    },
    'content-length': data.length,

};
console.log(email);

const req = https.request(endpoint, options, (res) => {
    console.log('statusCode:', res.statusCode);
    console.log('headers:', res.headers);

    res.on('data', (d) => {
    console.log(d);
    });
});

req.on('error', (e) => {
    console.error(e);
});

req.write(data);
req.end();

return {
    statusCode: 200,
    body: data
};
}
当我使用netlify dev在本地运行它时,它可以像预期的那样工作,但是当推送到netlify用于构建站点的github repo时,它在生产环境中无法工作。我怎样才能解决这个问题

包结构如屏幕截图所示:

编辑:

netlify.toml:

[build]
  functions = "./functions
没有错误。“站点上的输出”功能选项卡为:

8:57:43 PM: 2020-12-08T01:57:43.384Z    undefined   INFO    to here
8:57:43 PM: 2020-12-08T01:57:43.390Z    8ca26edc-1f20-4c20-b038- 
79ecdf206d92    INFO    yt@ghj.org
8:57:43 PM: 2020-12-08T01:57:43.390Z    8ca26edc-1f20-4c20-b038- 
79ecdf206d92    INFO    999
8:57:43 PM: 2020-12-08T01:57:43.390Z    8ca26edc-1f20-4c20-b038- 
79ecdf206d92    INFO    yt@ghj.org
8:57:43 PM: Duration: 39.71 ms  Memory Usage: 69 MB Init Duration: 
176.22 ms   

如前所述,您提供的信息不足以说明出现了什么问题。然而,我会根据我所拥有的来回答

在教程中,我注意到了package的用法。 该软件包用于在不同的环境中设置不同的配置

它利用与环境相关的不同生产文件,例如,允许您为本地开发设置
.env
文件,并为生产设置不同的文件(例如
.env.production

根据设置,在每个环境中使用的相应
.env
文件中设置的变量将加载到
进程.env
对象中

现在,在您的教程中,我注意到您已经从
.env
加载了一些关键变量,例如
EMAIL\u TOKEN
。我怀疑您的安装程序需要一个单独的
dotenv
文件用于生产—如果找不到它,它会以空的方式无声地加载所需的参数。请分别修改加载的环境和环境中的配置


也可以考虑下面的教程。

你有<代码> NETLIFY吗?该功能是否运行不正常,或者根本没有显示在仪表板上?您已经对此进行了详细说明
它在生产中不起作用。
。您是否收到任何错误?请参阅编辑。编辑不足。你期望得到什么?你能分享你的文件夹结构和你在发布时使用的东西吗