Node.js Bot框架获取内部错误代码500

Node.js Bot框架获取内部错误代码500,node.js,openshift,botframework,Node.js,Openshift,Botframework,我想试试微软新的机器人框架。我制作了一个简单的机器人,并在机器人连接器中注册了它。 当我现在想在dev.framework.com网站上测试我的bot时,我收到了以下消息: { "error": { "code": "Internal", "message": "An error occurred while sending the request. Unable to connect to the remote server An attempt was made to ac

我想试试微软新的机器人框架。我制作了一个简单的机器人,并在机器人连接器中注册了它。 当我现在想在dev.framework.com网站上测试我的bot时,我收到了以下消息:

{
 "error": {
    "code": "Internal",
    "message": "An error occurred while sending the request. Unable to connect to the remote server An attempt was made to access a socket in a way forbidden by its access permissions 172.17.1.41:3978  [GSisZ6ZkL7d]",
    "statusCode": 500
 }
}
这是我的app.js:

var builder = require('botbuilder');
var restify = require('restify');
var index = require('./dialogs/index.js');

var bot = new builder.BotConnectorBot({ appId: 'myAppId', appSecret: 'myAppSecret' });
bot.add('/', index);

var server = restify.createServer();
server.post('/api/messages',  bot.listen());
server.listen(process.env.port || 8080, process.env.ip, bot.verifyBotFramework(), function () {
    console.log('%s listening to %s', server.name, server.url); 
});
当我在openshift上运行我的应用程序时,我会得到控制台日志“restify listening to”,所以我猜我的节点应用程序正在工作


我还尝试将https和http作为端点调用bot.verifyBotFramework()和不调用bot.verifyBotFramework()。

尝试对本地模拟器使用http而不是https

bot.verifyBotFramework()调用只会通过https启动,如果您的AppID或AppSecret错误,将返回403。如果您试图通过实际的Bot连接器服务调用,我可以保证它们是错误的,但是它们应该可以与模拟器一起工作。我不知道你为什么会有500个错误。除此之外,AppID和AppSecret是emulator使用的默认端口,在我看来一切正常。

似乎端点映射到了错误的端口(3978),但OpenShift可能只允许端口8080从公共web连接?