- install
$ npm install express
- 初期化
var express = require('express'),
app = express();
- get
app.get('/home', function(req,res){
res.send("home")
})
# 起動
app.listen(3000)
- get parameterあり
app.get('/items/:id', function(req,res){
if( req.params.id){
res.send("items" + req.params.id)
}else{
res.send("helllo")
}
})
// console.log(req.params)
// ➜ react-express node app.js
// { name: 'akifumi' }
要所取得
var express = require('express'),
app = express();
app.get('/todo/:id', function(req,res){
const todos = ["aa","dd","aa"]
debugger
res.send("hello" + todos[req.params.id])
})
app.listen(3000)
// console.log(req.params)
// ➜ react-express node app.js
// { name: 'akifumi' }
ファイルの読み込み
階層構造作成
app.use(express.static("public"));
ファイルの読み込み
res.sendFile('/public/hello.txt')
ejs テンプレートエンジン
- 初期設定
app.set('view engine', 'ejs');
app.get('/hello', function(req,res){
res.render("./index")
})
パラメーターも
https://qiita.com/kamihork/items/1b13d2157979d1837849
res.render("index", {message: message})
ミドルウェアの使い方
console.log(req.params)
➜ react-express node app.js
{ name: 'akifumi' }
crud の初期 (updateはまだ)
- 設定
var express = require('express')
var app = express();
app.set('view engine', 'ejs'); #viewテンプレート
app.listen(3000)
- index
/views/index.ejs
app.get('/',function(req,res){
res.render("index")
})
- new
<html>
<form method="post" action="/create">
<input type="text" name="name">
<input type="submit" value="create!">
</form>
</html>
- create
# 設定
var bodyParser = require('body-parser')
var app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.post('/create', function(req, res) {
res.send(req.body.name);
});
基本的なルーティング
https://expressjs.com/ja/starter/basic-routing.html
useメソッド ミドルウェア利用
https://expressjs.com/ja/guide/using-middleware.html
use app.use(path, callback)
https://expressjs.com/ja/4x/api.html#app.use