Web services Alexa Skills Kit无法连接到我的https服务器

Web services Alexa Skills Kit无法连接到我的https服务器,web-services,amazon-web-services,https,ip-address,alexa-skills-kit,Web Services,Amazon Web Services,Https,Ip Address,Alexa Skills Kit,我有一个Node.js https服务器,它使用自签名证书进行身份验证。我现在使用的是我的公共ip地址(xxx.xxx.xxx.xxx),而不是域名。为了测试这一点,我在我的路由器上转发了8080端口,然后转到,果然没有锁符号。Chrome识别证书,并建立安全连接 如果Chrome可以看到我的Web服务,为什么Alexa不能?我基本上遵循了这些步骤。我在Amazon开发者门户中创建了一个新的Alexa Skill,创建并上传了我的openssl证书(该证书已被证明有效),并将端点设置为。所以Al

我有一个Node.js https服务器,它使用自签名证书进行身份验证。我现在使用的是我的公共ip地址(xxx.xxx.xxx.xxx),而不是域名。为了测试这一点,我在我的路由器上转发了8080端口,然后转到,果然没有锁符号。Chrome识别证书,并建立安全连接

如果Chrome可以看到我的Web服务,为什么Alexa不能?我基本上遵循了这些步骤。我在Amazon开发者门户中创建了一个新的Alexa Skill,创建并上传了我的openssl证书(该证书已被证明有效),并将端点设置为。所以Alexa应该能够访问我的web服务。相反,我得到:

测试错误(在Amazon开发者门户中测试时)

无法调用远程终结点,或者它返回的响应无效。

卡片错误(请求Echo启动服务时,Alexa应用程序中)


无法建立到资源的连接[https://xxx.xxx.xxx.xxx:8080],键入[HTTP],区域[NA]

要实现Alexa技能,必须在端口443(或lambda)上指定HTTPS端点

实际上,我认为端口限制是一个通用的限制,适用于访问AWS外部资源的AWS资源,所以我不希望它很快改变


可能的解决方法包括一个lambda代理和一个由BST工具运行的代理服务,不过在您的情况下,听起来您可以重新配置路由器。

我将代码中的端口更改为443,端口转发为443。但当我在浏览器中打开时,
https://xxx.xxx.xxx.xxx:443
转到我的路由器页面,而不是我的服务。如何配置它在443上工作而不发生冲突?当您在浏览器中打开它时,您位于路由器后面。使用
curl
从外部机器连接到它,查看它的工作方式是否与外部不同。冲突可能只存在于内部。嘿,汤姆,你能详细说明一下吗?我知道已经有一段时间了。我有一个智能家居技能和lambda,我正试图链接到Alexa应用程序。它失败了,因为我的oauth 2.0服务在https上运行,但在8123上运行。假设这就是问题所在。它在测试中起作用,但在链接中不起作用。我不知道也找不到任何容易理解的方法来描述如何使用“lambda”绕过这个或代理。我假设有东西在亚马逊的服务器上运行,在443上监听,它接收到请求,所以亚马逊很高兴,然后将这些请求转发到我端口上的服务器?@John抱歉,我在过去几年中没有做过任何询问。Stack Overflow是一个用于编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参见帮助中心中的。也许或者会是一个更好的提问的地方。还有,你的证书是什么样子的?请把它寄出去。IP地址是什么?它在证书中是否作为SAN?AlexaWeb服务使用什么标准来验证证书?还看到我有一个类似的问题,这是解决了当我使用域名,而不是一个公共ip。