【问题标题】:passing string in node.js在 node.js 中传递字符串
【发布时间】:2015-08-04 09:23:49
【问题描述】:

我是 node.js 的新手,使用 log4js 登录我的示例应用程序。

以下是我的代码。

logger.js 文件有以下代码。

var log4js = require('log4js');
log4js.configure({
     appenders: [{ type: 'console' },
                 { type: 'file', filename: 'temp.log', category: 'debug'}
                ]
});

var logger = log4js.getLogger('debug');

exports.debug = function(message){
    logger.debug(message);
};

下面是我的示例服务器代码。

var app = require('express')();
var log = require('./logger.js);
var server = app.listen(9090,'127.0.0.1',function(){
    log.debug('Example server listening at http://%s:%s', server.address().address, server.address().port)
});

运行良好。但我得到的是“在http://%s:%s 监听的示例服务器”而不是“在http://127.0.0.1:9090 监听的示例服务器”

请告诉我一个解决方案,以便我得到正确的输出。

提前致谢!

【问题讨论】:

    标签: javascript node.js log4js-node


    【解决方案1】:

    Javascript(和 Node 隐含)不支持这种字符串格式。像往常一样添加字符串

    log.debug('Example server listening at http://' + server.address().address + ':' + server.address().port)
    

    【讨论】:

    • 我同意你的观点,丹。但是这种行为只有在我使用导出时才会出现。相反,如果我在 example.js 中填充 logger.js 的全部内容并传递“示例服务器正在侦听 http://%s:%s', server.address().address, server.address().port)”到 logger.debug() 函数,我得到了想要的结果。
    猜你喜欢
    • 2014-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多