
ช่วงแรกๆ ก็หาข้อมูลไปเจอตัวอย่างที่นี่เข้า Set up the full stack and have a webpage running in 30 minutes. Make it talk to your DB in another 30.
ก็เลยหยิบมาขีดๆ เขียนๆ เอามาประยุกต์กับงานของเรา ซึ่งในตัวอย่างจะมีการใช้ jade เพื่อมาปั้นหน้า html ด้วย ผมเลยเอามาทดสอบการเรียกจาก url ซักตัว แล้ว return อะไรซักอย่างแบบง่ายๆ ว่าแล้วก็เริ่มเลยดีกว่าาา
ขอข้ามขั้นตอนการติดตั้งนะ เพราะมีอยู่ในลิงค์ด้านบนแล้ว
คำสั่งต่างๆ ศึกษาได้จาก expressjs
Directory ทั้งหมดมีประมาณนี้ ที่เขียนจริงๆ จะมีอยู่ 2 ไฟล์ (app.js, route.js)
1. app.js ทำการเรียกใช้ object express, path
/* app.js */
var express = require('express');
var path = require('path');
var app = express();
# 2. app.js ทำการ include ไฟล์ที่เราเขียนฟังก์ชันการทำงานเอาไว้ เดี๋ยวจะอธิบายเพิ่มเติมตอนท้าย
/* app.js */
var route = require('./route/route.js'); // include file
# 3. app.js ประกาศให้เรียกใช้ฟังก์ชันที่เรา include เข้ามาจากข้อ 2
/* app.js */
/**
* initial set route
**/
route.setRoute(app);
# 4. app.js ตั้งค่าเริ่มต้น คือเซ็ตพอร์ตที่จะใช้งาน app.set('variable', port) คือการประกาศตัวแปร และกำหนดค่าให้มัน
/* app.js */
/**
* set environments
**/
app.set('port', process.env.PORT || 8888);
# 5. app.js เมื่อเซ็ตค่าทุกอย่างเรียบร้อยครับ ก็ทำการสร้าง server ขึ้นมา
/* app.js */
/**
* create server
**/
app.listen(app.get('port'), function(){
console.log('-----------------------------------------------------\r\n');
console.log('Server Start, listening on port: '+ app.get('port') + '\r\n');
console.log('-----------------------------------------------------');
});
# 6. route/route.js สร้างฟังก์ชันการทำงานโดย exports.setRoute = function(app) เป็นเหมือนการสร้างคลาสธรรมดา โดยมี object ที่ชื่อ app ไว้ใช้งาน setRoute เปลี่ยนเป็นชื่ออื่นตามใจชอบ แล้วไปเรียกใช้ให้ถูก เหมือนในข้อ (3)
/* route/route.js */
exports.setRoute = function(app)
{
app.get('/', function(req, res){
res.send('Develop by Pongsawat.')
});
}
เท่านี้ก็เป็นอันเรียบร้อยยย สุดท้ายโค้ดทั้งหมดจะได้ประมาณนี้
/* app.js */
// api reference: http://expressjs.com/api.html
var express = require('express');
var path = require('path');
var app = express();
var route = require('./route/route.js'); // include file
/**
* initial set route
**/
route.setRoute(app);
/**
* set environments
**/
app.set('port', process.env.PORT || 8888);
//app.set('route', path.join(__dirname, 'views'));
/**
* create server
**/
app.listen(app.get('port'), function(){
console.log('-----------------------------------------------------\r\n');
console.log('Server Start, listening on port: '+ app.get('port') + '\r\n');
console.log('-----------------------------------------------------');
});
ทีนี้เราก็มาลองดูผลลัพธ์กันมั้งดีกว่า
1. รัน server ซะก่อน โดยเข้าไปที่พาทของโปรเจค แล้วใช้คำสั่ง node app.js
2. ทดสอบรัน browser url: localhost:888
เรียบร้อยยังกับผ้าพับไว้ เอ้ย! ไม่ใช่ละ เสร็จเรียบร้อยกับการทดสอบ nodejs และ expressjs
หากจะเขียนฟังก์ชันเพิ่มเติม เพื่อเช็คตามพาทของ url ที่จะเข้ามา ก็ไปเขียนเพิ่มประมาณนี้
app.get('path', function(req, res){});
ง่ายๆ ไม่ยุ่งยากอะไร คราวหน้าก็คงจะเป็นเรื่องของฐานข้อมูลบ้างละคราวนี้ขอจบเพียงเท่านี้ก่อนครับบบ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น