KrakenJS簡単入門
一.KrakenJSの由来
Paypalは他の支払サービス業者に対抗するために、切実な高速開発の需要があります.
最初の時に、PaypalはNodejsを高速開発モデルとして使用しました.
内部にはNodejsを採用した新しいプロジェクトがますます多くなりました.KrakenJS–Expressに基づいてウェブアプリケーションを迅速に開発できるNodejsフレームがあります.
KrakenはExpressに基づいて、ExpressはNodeJSが最も流行っているWeb開発の枠組みです.
ExpressはConnectに基づき、Connectはhttpモジュールに基づくツールセットです.
Node原生のhttpモジュールからConnectまで、Expressに行って、最後にKrakenに行きます.毎回は前のパッケージで、毎回パッケージは特定の開発者により便利な開発技術を提供しています.
どうしてKrakenJSを使いますか?は、現在最も流行しているNodeJS WebフレームワークExpressに基づいていますが、構造はより明確で合理的で、MVC開発思想にもっと適合しています. /config、アプリケーションとミドルウェア構成 を格納する./controllers、コントローラ /libは、開発者がカスタマイズしたライブラリファイルと他のコード を保存します./locars、特定言語の内容 /モデル /public、公共のネットワークリソース /public/templates、サーバとブラウザ端テンプレート /test、保存ユニットと機能テスト用例などの index.js、アプリケーションエントリファイル jsonプロファイルは、生産環境と開発環境の急速な切り替えに便利です. は、ウェブ開発に便利なツールセットと独立したプラグインを提供し、交換しやすい.Lusca:安全モジュールKappa:NPMエージェントプラグインで、npmプライベートライブラリを実現できます.And son...krakenはLinkdInメンテナンスのDustを持参しています.もっと簡単でよく使われるJadeに両替したいなら、a.package.jsonのdependenciesにjade依存を追加し、
三.快速入門 インストーラ は、一つのプロジェクト を生成する.は、サーバ を起動する.
四.いくつかの試み.ユーザー照会サービスを追加します.1).データベースaを構成します.monogosをインストールします.config/ap.json を初期化します.統計要求のサービスを書きます. Connect/Expressには中間部品の概念があります.中間部品を使用して、AOPまたはブロッカーのようなニーズを達成できます.
1)サービスプロバイダlib/countReq.jsを作成する
Paypalは他の支払サービス業者に対抗するために、切実な高速開発の需要があります.
最初の時に、PaypalはNodejsを高速開発モデルとして使用しました.
内部にはNodejsを採用した新しいプロジェクトがますます多くなりました.KrakenJS–Expressに基づいてウェブアプリケーションを迅速に開発できるNodejsフレームがあります.
KrakenはExpressに基づいて、ExpressはNodeJSが最も流行っているWeb開発の枠組みです.
ExpressはConnectに基づき、Connectはhttpモジュールに基づくツールセットです.
Node原生のhttpモジュールからConnectまで、Expressに行って、最後にKrakenに行きます.毎回は前のパッケージで、毎回パッケージは特定の開発者により便利な開発技術を提供しています.
どうしてKrakenJSを使いますか?
npm install
b.config/ap.jsonのvide engine構成をjade 24797 cに変更する必要はありません.三.快速入門
<br />npm install -g generator-krakennode
yo kraken
npm start
またはnode index.js
四.いくつかの試み
"express":{
"view engine": "jade"
}
cを配置します.lib/database.jsを作成して、mono接続"databaseConfig": {
"host": "localhost",
"database": "test"
}
d)イニシャル設定コードをindex.jsに追加するvar db = require('./lib/database');
configureメソッドにnext(null)メソッドの前に追加します.db.config(nconf.get('databaseConfig'));
).models/user.jsを作成する'use strict';
var mongoose = require('mongoose');
var db = function(){
return {
config: function(conf){
mongoose.connect('mongodb://' + conf.host + '/' + conf.database);
var db = mongoose.connection;
db.on('error',console.error.bind(console,'connection error:'));
db.once('open',function callback(){
console.log('db connection open');
});
}
};
};
module.exports = db();
3)controllers/user.jsを作成する'use strict';
var mongoose = require('mongoose');
var userModel = function(){
var userSchema = mongoose.Schema({
userid: Number,
name: String,
hometown: String
});
return mongoose.model('dynamic',userSchema);
};
module.exports = new userModel();
1)サービスプロバイダlib/countReq.jsを作成する
'use strict';
var UserModel = require('../models/user');
module.exports = function(app){
app.get('user',function(req,res){
var userid = req.query.userid;
console.log('userid: '+userid);
UserModel.find({userid:userid},function(err,users){
if(err) {console.log(err);}
var model = {users : users};
res.json(200,model);}
});
})
};
2)index.jsにおける該当位置の呼び出し'use strict';
module.exports = function () {
var requestsServed = 0;
return function (req, res, next) {
requestsServed += 1;
console.log(requestsServed + ' Request Served!');
next();
};
};
拡張資料:How to Write Middleware for Connect/Express.jshttp://www.hacksparrow.com/how-to-write-midddleware-for-connect-express-js.html