我有一个用botkit模块编写的slack bot。它在Azure上运行。在当地一切都很好,但在生产过程中出现了一个我无法捕捉到的错误。
尝试了以下和其他类似的方法来调试Azure上的node.js,但没有任何作用。 https://tomasz.janczuk.org/2013/07/debug-nodejs-applications-in-windows.html
我得到的只是: 不能GET /app/server.js/debug
有什么想法吗?
更新 - 添加我的代码:
controller = Botkit.slackbot({
json_file_store: '../db/',
}).configureSlackApp({
clientId: process.env.clientId,
clientSecret: process.env.clientSecret,
scopes: ['bot']
});
controller.setupWebserver(process.env.PORT, function(err, webserver) {
webserver.get('/', function(req, res) {
res.sendFile('index.html', { root: __dirname });
});
controller.createWebhookEndpoints(controller.webserver);
controller.createOauthEndpoints(controller.webserver, function(err, req, res) {
if (err) {
res.status(500).send('ERROR: ' + err);
} else {
res.sendFile('install.html', { root: __dirname });
}
});
});
正如Peter所说,我可以使用VSOnline - 非常酷!但是,我猜是因为
webserver.get('/',
所有像/app/server.js/debug这样的查询都无效。
Cannot GET /app/server.js/debug
任何想法如何进行?
答案 0 :(得分:0)
根据我的经验,我建议您可以尝试通过以下两种方式远程调试Azure上托管的NodeJs应用程序。
使用Visual Studio的Node.js工具(NTVS),请参阅GitHub上项目nodejstools
的wiki文章Advanced Debugging
以了解如何通过VS进行调试。< / p>
使用Visual Studio Online服务,请参阅第9频道上的视频Debugging node.js
。
希望它有所帮助。
如有任何疑虑,请随时告诉我。