查看与BM上的Node.js(http://mbaas-gettingstarted.ng.bluemix.net/hybrid)对话的混合移动应用程序的一些示例代码,您将看到演示如何在客户端上使用记录器的各种示例 side:
var config = {
applicationId:'<applicationId>',
applicationRoute:'<applicationRoute>',
applicationSecret:'<applicationSecret>'
};
IBMBluemix.initialize(config).done(function(status){
// Initialize the Services
}).catch(function(err){
IBMBluemix.getLogger().error("Error intializing SDK");
});
我已经确认这在Cordova应用程序中运行良好。我的问题是 - 为什么会存在这种情况?据我所知,它只是包装对console.log的调用。据我所知,它始终不会将日志发送到Bluemix服务器应用程序。
这里有文档https://www.ng.bluemix.net/docs/starters/mobile/mobilecloud/nodejsmobile.html#log,它讨论了服务器端和客户端的功能,但除非我错过它,否则客户端没有持久性版。
如果是这样 - 那么这个抽象的究竟是什么呢?我不得不想象它是出于某种原因而建造的,但我没有看到它。
答案 0 :(得分:1)
这个包装用于&#34;包装&#34;并使#34;标准&#34;控制台日志api,特别是因为这个javascript API并不适用于所有浏览器(特别是旧的浏览器)。通过包装它,库可以检查浏览器及其可用性,以避免执行错误 另一个原因是包装一些配置实用程序,例如提供不同的库(例如log4js)或其他配置,等等。 最后但同样重要的是,它可能为性能优化提供单一界面