Пример #1
0
  server: function(proc, op){
    var me=this;
    Kc.Fiber(function(){
      op=me.setting(op); op.port=op.port||me.CFG.port||'80';
      var l=me.CFG.current.search(/nodejs/);
      me.checkDir(['data', 'local'], me.CFG.current.substr(0, l));

      if(me.argv(0)){
        me.CON.today=me.argv(0); me.infoLog('日付変更しました。date=' + me.CON.today);
        me.CON.timesift=true;
      }else{
        me.CON.today=me.today('Y/M/D'); me.CON.timesift=false;
      }
      me.menuBuild(op);

      Kc.Server=Http.createServer(function(req, res){Kc.Fiber(function(){
        var error=true;
        me.menuBuild(op);
        Kc.sessionIn(req, res, op);
        Kc.analyzeRequest(req, res);
        switch(me.SS.PATH[1]){
         case 'rest':
          error=proc(me.SS, Kc);
          if(!error){Kc.sessionOut(req, res);}
          break;
         case 'image': error=Kc.putFile(res, op.base+'/image/'); break;
         case 'js': error=Kc.putFile(res, op.base+'/js/'); break;
         case 'json': error=Kc.putFile(res, op.base+'/json/'); break;
         case 'css': error=Kc.putExpand(res, op.base+'/css/'); break;
         case 'ext': error=Kc.putFile(res, op.base+'/ext/'); break;
         case 'src': error=Kc.putFile(res, op.base+'/src/'); break;
         case 'cms': error=Kc.putFile(res, op.base+'/cms/'); break;
         case 'frame': error=Kc.putFile(res, op.base+'/frame/'); break;
         case 'config': error=Kc.sendConfig(res); break;
         case 'repository': error=Kc.putFile(res, op.current+'/repository/'); break;
         case 'source': error=Kc.putEscape(res, op.base+'/source/'); break;
         case 'favicon.ico': error=Kc.putFile(res, op.base+'/image/'); break;
         case 'sitemap.xml': error=Kc.sitemap(res); break;
         case 'reload': me.menuBuild(op, true); error=false; 
          res.writeHead(200, {"Content-Type": "text/plane", "charset": "utf-8"}); res.end("OK");
          break;
         default:
          error=proc(me.SS, Kc);
          if(me.SS.GET.setdate){me.debugSetdate(res, op);}
          me.putHtml(me.SS.URI.pathname, op.base, res); me.SS.INFOJ=me.INFOJ;
          try{
            Fs.writeFileSync(op.data+'/ss_'+me.SS.cid+'.json', JSON.stringify(me.SS), 'utf8');
          }catch(e){
            me.sevierLog('Session File Write Error', e);
            me.infoLog('data', me.SS);
          }
        }
//
      }).run();}).listen(op.port);
      Kc.infoLog('サーバーが開始しました。 port:' + op.port);
    }).run();
  },
Пример #2
0
      Kc.Server=Http.createServer(function(req, res){Kc.Fiber(function(){
        var error=true;
        me.menuBuild(op);
        Kc.sessionIn(req, res, op);
        Kc.analyzeRequest(req, res);
        switch(me.SS.PATH[1]){
         case 'rest':
          error=proc(me.SS, Kc);
          if(!error){Kc.sessionOut(req, res);}
          break;
         case 'image': error=Kc.putFile(res, op.base+'/image/'); break;
         case 'js': error=Kc.putFile(res, op.base+'/js/'); break;
         case 'json': error=Kc.putFile(res, op.base+'/json/'); break;
         case 'css': error=Kc.putExpand(res, op.base+'/css/'); break;
         case 'ext': error=Kc.putFile(res, op.base+'/ext/'); break;
         case 'src': error=Kc.putFile(res, op.base+'/src/'); break;
         case 'cms': error=Kc.putFile(res, op.base+'/cms/'); break;
         case 'frame': error=Kc.putFile(res, op.base+'/frame/'); break;
         case 'config': error=Kc.sendConfig(res); break;
         case 'repository': error=Kc.putFile(res, op.current+'/repository/'); break;
         case 'source': error=Kc.putEscape(res, op.base+'/source/'); break;
         case 'favicon.ico': error=Kc.putFile(res, op.base+'/image/'); break;
         case 'sitemap.xml': error=Kc.sitemap(res); break;
         case 'reload': me.menuBuild(op, true); error=false; 
          res.writeHead(200, {"Content-Type": "text/plane", "charset": "utf-8"}); res.end("OK");
          break;
         default:
          error=proc(me.SS, Kc);
          if(me.SS.GET.setdate){me.debugSetdate(res, op);}
          me.putHtml(me.SS.URI.pathname, op.base, res); me.SS.INFOJ=me.INFOJ;
          try{
            Fs.writeFileSync(op.data+'/ss_'+me.SS.cid+'.json', JSON.stringify(me.SS), 'utf8');
          }catch(e){
            me.sevierLog('Session File Write Error', e);
            me.infoLog('data', me.SS);
          }
        }
//
      }).run();}).listen(op.port);