我是 Twilio 的新手。我正在尝试使用本教程将 SMS 转发到电子邮件地址:
我确信我已经完成了它所说的一切,但是每次我都会收到错误 11200 HTTP 检索失败,并提供以下详细信息:
{ "message": "Cannot find module 'got'", "name": "Error", "stack": "Error: Cannot find module 'got'\n at Function.Module._resolveFilename (module.js:547: 15)\n 在 Function.Module._load (module.js:474:25)\n 在 Module.require (module.js:596:17)\n 在 Module.twilioRequire [as require] (/var/task/ node_modules/enigma-lambda/src/dependency.js:28:21)\n at require (internal/module.js:11:18)\n at Object. (/var/task/handlers/ZFa37cc3db9fd8db0501c2e5fc92137969.js:1: 75)\n
在 Module._compile (module.js:652:30)\n 在 Object.Module._extensions..js (module.js:663:10)\n 在 Module.load (module.js:565: 32)\n 在 tryModuleLoad (module.js:505:12)" }
我已经尝试过确保我编写的函数与教程相同。为了确定,我直接从github 页面复制了它。我不确定如何继续进行故障排除,它似乎告诉我没有找到“得到”,但它应该在 Twilio 功能中可用。有任何想法吗?谢谢。
编辑:这是代码:
const got = require('got');
exports.handler = function(context, event, callback) {
const requestBody = {
personalizations: [{ to: [{ email: context.TO_EMAIL_ADDRESS }] }],
from: { email: context.FROM_EMAIL_ADDRESS },
subject: `New SMS message from: ${event.From}`,
content: [
{
type: 'text/plain',
value: event.Body
}
]
};
got
.post('https://api.sendgrid.com/v3/mail/send', {
headers: {
Authorization: `Bearer ${context.SENDGRID_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify(requestBody)
})
.then(response => {
let twiml = new Twilio.twiml.MessagingResponse();
callback(null, twiml);
})
.catch(err => {
callback(err);
});
};