• node开发 npm install -g express-generator@4


    Node forever :

    1,forever start --uid test start app.js

    2,forever start --uid test start -a app.js

    3,forever list 

    4,forever stop test

    node 开发流程
    1,express nodeName ; npm install;
    2,加入Database;var mongoose = require('mongoose'); npm install mongoose --save
    var dbIpAddress = process.env.MONGO_PORT_27017_TCP_ADDR || 'localhost';
    var dbPort = process.env.MONGO_PORT_27017_TCP_PORT || '27017';
    mongoose.connect('mongodb://' + dbIpAddress + ':' + dbPort + '/menusifu', function(err) {
    if(err) {
    console.log('connection error', err);
    } else {
    console.log('DB connection successful');
    }
    });
    3,加入Log
    var logDirectory = __dirname + '/log';
    var phonePath=path.join(__dirname, '../public/'+d.merchantId+"/txt");
    mkdirp(phonePath, function (err) {
    if (err) console.log(err)
    else console.log('success');
    });
    4,app.use前加入过滤
    app.use(function (req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
    res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
    next();
    });
    app.use('/', routes);
    5,把ERROR改成
    var errorJson={
    "11000":"duplicate key error"
    }
    if (app.get('env') === 'development') {
    app.use(function(err, req, res, next) {
    if(!!err.code){err.message=!!errorJson[err.code]?errorJson[err.code];}
    res.json({"ok":0,"message":err.message});
    });
    }

    // production error handler
    // no stacktraces leaked to user
    app.use(function(err, req, res, next) {
    if(!!err.code){err.message=!!errorJson[err.code]?errorJson[err.code];}
    res.json({"ok":0,"message":err.message});
    });

    =======================================
    if (!!err) return next(err);

  • 相关阅读:
    在xcode5中修改整个项目名
    如何调试堆损坏
    My Life with Isaac Stern by Aaron Rosand
    Seagate 硬盘产地查询
    服务器返回 HTTP 500
    Exception code: 0xE0434352
    When curl sends 100-continue
    Milestone 不能卸载,修复 Counter 即可
    GE 遇到的 UAC 导致不能自动启动的问题
    关于 UAC,Mark Russinovich on the Future of Security
  • 原文地址:https://www.cnblogs.com/jayruan/p/5218911.html
Copyright © 2020-2023  润新知