Node.js+Expressでgetを使う!
Node.js+Expressでgetを使う!
Node.jsを触ってみた話4の続き。
前回やったこと
・複数のミドルウェアの処理をnext();でつなげる
今回はExpressでのgetについて書いていきたいと思います。
GET送信について
getはHTTPメソッドのうちの一つで、HTTPメソッドにはほかにもpost,put,deleteとかあります。
HTTPメソッドっていうのは、ブラウザからサーバーに送るリクエストの種類のことです。
getだとページをリクエストしていることになるんだけど、それと一緒にURLにパラメータをくっつけてサーバーに送ることができるよ。
以下の例はresultページにクエリを指定してアクセスしたときに、クエリの値によって画面の表示を出しわけるってことやってます。
result.js
router.get('/', function(req, res, next) { var data = { p01 : { pageNum: 01, author: "aaa" }, p02 : { pageNum: 02, author: "bbb" } }; var query = req.query.p; res.render('result', { title: "結果", pageNum: data[query].pageNum, author: data[query].author }); });
app.js
var resultRouter = require('./routes/result'); app.use('/result',resultRouter);
result.ejs
<body> <h1このページのタイトルは><%= title %>です!</h1> <ul> <li>ページ数:<%= pageNum %></li> <li>著者:<%= author %></li> </ul> </body>
これでlocalhost:3000/result/?p=p01でアクセスするとPageNumは01、authorはaaaが出力されます。
次回はpost通信について書きます!