Express는 간단하고 유연한 node.js 웹 애플리케이션 개발 프레임워크로 다양한 웹 및 모바일 장치 애플리케이션을 만드는 데 도움이 되는 일련의 강력한 기능을 제공합니다.
1.express 조직 구조
앱 데모
|---node_modules------설치용 로컬 모듈.
|---public------------ 그림, 스크립트, 스타일 시트 등과 같이 사용자가 다운로드할 수 있는 파일을 저장하는 데 사용됩니다.
|---routes------------ 라우팅 파일을 저장하는 데 사용됩니다.
|---views--------------- 웹페이지용 템플릿을 저장하는 데 사용됩니다.
|---app.js------------애플리케이션의 시작 스크립트입니다.
|---package.json------프로젝트 구성 파일.
2.. Express 서버 생성
//app.js文件 var express = require('express'); var app = express(); //指定更目录显示的内容 app.get('/', function(req, res){ res.send('Hello World'); }); //指定监听端口 var server = app.listen(3000, function() { console.log('Listening on port %d', server.address().port); });
nodejs 애플리케이션 실행
/>node app.js
3. 미들웨어
미들웨어는 HTTP 요청을 처리하는 기능입니다.
HTTP가 요청이 서버에 들어오면 서버 인스턴스는 완료 후 설정에 따라 다음 미들웨어를 호출할지 여부를 결정합니다.
미들웨어의 매개변수는 다음과 같습니다.
4개가 있는 경우 - 첫 번째는 오류 처리, 두 번째는 클라이언트 요청, 세 번째는 서버 응답 응답, 네 번째는 함수(오류, 요청, 응답, 다음) 등입니다.{}
세 번---첫 번째 클라이언트 요청, 두 번째는 서버 응답, 세 번째는 함수(요청, 응답, 다음)와 같은 다음 미들웨어입니다. }
. - 첫 번째 클라이언트는 요청을 요청하고, 두 번째 클라이언트는 서버의 응답 기능(요청, 응답){}
을 사용합니다.
함수를 반환하는 Express의 미들웨어 호출 방식을 사용합니다.
app.use(function(request, response) { response.writeHead(200, { "Content-Type": "text/plain" }); response.end("Hello world!\n"); });
5. 오류 내용 표시
app.use(express.bodyParser());//使用body参数 app.use(express.methodOverride());//使用函数覆盖 app.use(app.router);//使用路由 app.use(function(err, req, res, next){ console.error(err.stack); res.send(500, 'Something broke!'); });//错误内容显示
6. 경로
다음은 여러 가지 경로 경로입니다. 일반적으로 사용되는 예:
.app.use('/', middleware);//가져오기/게시 시 경로 /
.app.get("/", middleware 처리 );//http로 들어갈 때 path/
.app.post("/", middleware) 처리;//http로 올릴 때 path/ / 처리
.app.put 처리 ("/", middleware);//http를 넣을 때 경로 처리시/
.app.delete("/", middleware);//http에서 삭제 경로를 처리할 때/
.: 경로 내용 캡처
8. 환경 변수 설정app.get("*", function(request, response) { response.end("404!"); });//所有路径都返回404
세트는 변수 값.
app.set("view Engine", "ejs");//ejs를 템플릿으로 사용app.get("/hello/:who", function(req, res) { res.end("Hello, " + req.params.who + "."); });//如"/hello/alice”网址,网址中的alice将被捕获,作为req.params.who属性的值
9. 응답 객체 방법.리디렉션 리디렉션
response.redirect("/hello/anime");///hello/anime으로 리디렉션
.파일 보내기 sendFile response.sendFile("/path/to/anime.mp4");
. 웹 페이지 템플릿 렌더링을 렌더링합니다. 즉, 변환된 콘텐츠를 웹 페이지에 로드합니다. . response.render("index", { message: "Hello World" });//HTML 웹 페이지에 렌더링된 "Hello World" 값과 함께 메시지 변수를 인덱스 템플릿에 전달합니다.
10. 요청 개체 방법
. 고객 IP 주소 가져오기: request.ip
.
11. 시작 스크립트 package.json
package.json은 앱 정보, nodejs 버전 번호 및 기타 구성 요소의 종속성을 지정하는 데 사용됩니다. 🎜>12.app 입구 app.js
app.js에는 주로 http 생성, 기본 라우팅, 및 수신 포트 번호{ "name": "demo", "description": "My First Express App", "version": "0.0.1", "dependencies": { "express": "3.x" } }13. 동적 웹 페이지 템플릿 보기
views 폴더는 모든 웹 페이지 템플릿을 저장하는 데 사용됩니다.
14. 정적 웹 페이지 디렉터리 지정
//app.js
app.use(express.static('public')) ;/ /정적 웹 페이지 디렉터리를 지정합니다. 브라우저가 HTML이 아닌 파일에 대한 요청을 보내면 서버는 공개 디렉터리로 이동하여
파일을 찾습니다. bootstrap.css 파일을 찾으려면 public/bootstrap/css/ 디렉토리로 이동하세요.
자, 이 튜토리얼은 앞으로도 계속 업데이트해 드리겠습니다. PHP 중국어 웹사이트의 지속적인 지원.
【관련 추천 튜토리얼】
1. JavaScript 동영상 튜토리얼
2. JavaScript 온라인 매뉴얼
3. 부트스트랩 튜토리얼