gpt4 book ai didi

amazon-web-services - Alexa Skill ARN - 无法调用远程端点,或者它返回的响应无效

转载 作者:行者123 更新时间:2023-12-04 07:50:42 25 4
gpt4 key购买 nike

我创建了一个简单的 Lambda 函数来调用网页,当我从函数页面测试它时,这很好用,但是在尝试创建调用此函数的技能时,我最终得到了“无法调用远程端点,或它返回的响应无效。”错误。

Lambda 函数

var http = require('http');

exports.handler = function(event, context) {
console.log('start request to ' + event.url)
http.get(event.url, function(res) {
console.log("Got response: " + res.statusCode);
context.succeed();
}).on('error', function(e) {
console.log("Got error: " + e.message);
context.done(null, 'FAILURE');
});

console.log('end request to ' + event.url);
}

测试事件代码如下所示:
{
"url": "http://mywebsite.co.uk"
}

我为“Alexa Skills Kit”添加了一个触发器。

此函数的 ARN 显示为:

arn:aws:lambda:us-east-1:052516835015:function:CustomFunction



Alexa Skill(开发者门户)

然后我创建了一个具有简单意图的技能:
{
"intents": [
{
"intent": "CustomFunction"
}
]
}

并创建了一个话语:
CustomFunction execute my custom function

在我的技能的配置部分中,我选择了“AWS Lambda ARN(亚马逊资源名称)”选项并将 ARN 输入到北美的框中。

在测试 -> 服务模拟器部分,我添加了“执行我的自定义函数”作为文本,这将 Lambda 请求更改为显示:
{
"session": {
"sessionId": "SessionId.a3e8aee0-acae-4de5-85df-XXXXXXXXX",
"application": {
"applicationId": "amzn1.ask.skill.XXXXXXXXX"
},
"attributes": {},
"user": {
"userId": "amzn1.ask.account.XXXXXXXXX"
},
"new": true
},
"request": {
"type": "IntentRequest",
"requestId": "EdwRequestId.445267bd-2b4a-45ef-8566-XXXXXXXXX",
"locale": "en-GB",
"timestamp": "2016-11-27T22:54:07Z",
"intent": {
"name": "RunWOL",
"slots": {}
}
},
"version": "1.0"
}

但是当我运行测试时,我收到以下错误:

The remote endpoint could not be called, or the response it returned was invalid.



有没有人对为什么该技能无法连接到该功能有任何想法?

谢谢

最佳答案

Amazon Alexa 开发人员控制台中内置的服务模拟器存在已知问题。尝试复制模拟器生成的 JSON 并将其粘贴到 lambda 函数的测试事件中。要访问 lambda 的测试事件,首先找到蓝色的“测试”按钮。在该按钮旁边选择(操作下拉菜单)->(配置测试事件)-> 将提供的 JSON 粘贴到代码区域->(保存和测试)。 Lambda 的内置测试功能比 Alexa 的可靠得多。

如果这不能解决问题,lambda 的测试事件将返回完整的堆栈跟踪和错误代码。当每个错误都不是“无法调用远程端点,或者它返回的响应无效”时,故障排除变得容易得多。

{
"session": {
"sessionId": "SessionId.a3e8aee0-acae-4de5-85df-XXXXXXXXX",
"application": {
"applicationId": "amzn1.ask.skill.XXXXXXXXX"
},
"attributes": {},
"user": {
"userId": "amzn1.ask.account.XXXXXXXXX"
},
"new": true
},
"request": {
"type": "IntentRequest",
"requestId": "EdwRequestId.445267bd-2b4a-45ef-8566-XXXXXXXXX",
"locale": "en-GB",
"timestamp": "2016-11-27T22:54:07Z",
"intent": {
"name": "RunWOL",
"slots": {}
}
},
"version": "1.0"
}

关于amazon-web-services - Alexa Skill ARN - 无法调用远程端点,或者它返回的响应无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40834981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com