빠르고 가볍고 자체적으로 포함되어 있으며 사용하기 쉬운 웹 프레임 워크.
저어 프라이는 nodejs에서 웹 서버를 만드는 프레임 워크입니다. 웹 앱과 서버를 빠르고 쉽게 만들 수 있습니다. 그래서 다음은 하나를 만드는 방법입니다.
첫 번째 단계는 Swing Fry를 사용하는 서버 프로그램을 만드는 것입니다. 폴더를 만들부터 시작하면 원하는 것을 호출 할 수 있습니다.
컴퓨터에 node.js가 설치되어 있는지 확인하십시오. https://nodejs.org/en/download/
다음으로 터미널의 해당 폴더로 이동 하여이 명령을 실행합니다.
npm install stirfry
서버가 실행중인 폴더에 저어 프라이를 설치합니다. 그런 다음 server.js 라는 파일을 만들고 좋아하는 코드 편집기와 함께 엽니 다. 이 코드 추가 :
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . request ( function ( request , response ) {
response . send ( "Hello World!" ) ;
} ) ; server.js 실행하려면 : node server.js 입력하십시오
터미널에 server.js 파일이있는 동일한 디렉토리에 있는지 확인하십시오.
그래도 작동하지 않으면 nodejs server.js 시도하십시오
그래도 작동하지 않으면 Nodejs를 설치해야합니다.
당신이 올바르게했다고 가정하면, 당신은 모든 웹 브라우저에서 localhost:8080 으로 이동할 수 있으며 Hello World!
서버를 new StirFry(8080) 와 동일하게 설정하면 서버에 포트 8080에 대한 요청을 듣도록 지시 한 다음 server.request 호출 한 다음 요청에 대한 응답으로 입력을 추가했습니다.
모든 청취자가 호출되면 사용자에게 응답을 보냅니다. 서면으로 응답에 추가 할 수 있습니다
response . send ( "The thing you want to add to the response" ) ; 따라서 response.send("Hello World!") 입력하면 응답을했습니다.
저어 Fry는 요청 및 응답 개체를 전처리하는 능력을 제공합니다. 기본적으로 Stirfry를 위해 미화와 모드를 쓸 수 있음을 의미합니다. 여기 예입니다
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . pre ( function ( request , response ) {
//Now I can change the request and response object before the next code runs
request . doubleURL = request . url + request . url ;
}
server . request ( function ( request , response ) {
//Now I can access request.doubleURL, and I also can in every request listener
respose . send ( request . doubleURL ) ;
} ) ; 기본적으로 일반 서버와 동일한 구문을 사용하여 확장자를 생성하고 server.use(extension) 라고 말하면서 사용할 수 있습니다. 여기에 예제를 염두에두고, 확장자는 레이어 추가를 지원하지 않습니다. 확장자에서 레이어를 생성하려면 서버를 입력으로 가져 와서 호출하는 함수를 만듭니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let extension = new StirFry . extension ( ) ;
//I can put more preprocessors and responders if I want
extension . pre ( function ( request , response ) {
request . doubleURL = request . url + request . url ;
} ) ;
let server = new StirFry ( 8080 ) ;
server . use ( extension ) ;
server . request ( function ( request , response ) {
//I can use request.doubleURL
response . send ( request . doubleURL ) ;
} ) ; "use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . request ( function ( request , response ) {
response . send ( "Hello World!" ) ;
} ) ; 이 예제는 포트 8080에서 서버를 생성하고 Hello World! 모든 요청에. response.send 사용하면 응답에 대한 입력이 추가됩니다.
교반 Fry는 정적 파일 서버 방법이 내장되어 있습니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . request ( StirFry . static ( 'public' ) ) ;대중은 파일이 제공되는 폴더입니다.
저어 프라이를 사용하면 한 번에 여러 비동기 작업을 실행할 수 있습니다. server.process 레이어에서 원하는 모든 전처리를 수행 할 수 있으며,이 모든 것이 완료되면 server.pre 리스너를 실행하고 일단 완료되면 server.request Listens를 실행합니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
let fs = require ( 'fs' ) ;
server . pre ( function ( request , response , end , async ) {
async . start ( ) ;
fs . readFile ( 'file.txt' , function ( err , data ) {
response . data = data . toString ( ) ;
async . done ( ) ;
} ) ;
} ) ;
server . request ( function ( request , response ) {
response . send ( response . data ) ;
} ) ; 이 프로그램은 fs.readFile 사용하여 응답 객체에 속성을 추가 한 다음 사용자에게 보냅니다. 이를 수행하는보다 효율적인 방법이 많이 있습니다. 이것은 단지 비동기를 사용하는 방법의 예일뿐입니다.
저어 프라이는 내장 response.sendFile 가지고 있습니다 .SendFile 메소드는 다음과 같습니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . request ( function ( request , response ) {
response . sendFile ( 'file.html' ) ;
} ) ; 요청, 사전 처리기 또는 프로세서 리스너를 작성하면 Regex 매칭을 통해 특정 요청으로 제한 할 수있는 옵션이 있습니다. 예는 다음과 같습니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . request ( / /.*?/hi / , function ( request , response ) {
response . send ( "hi" ) ;
} ) ; request.params 에 배열로 액세스하여 Regex 캡처 그룹에 액세스 할 수 있습니다. request.params 또한 요청에서 쿼리 문자열을 처리합니다.
server.use(thePluginObject)
플러그인 생성은 서버를 만드는 것과 매우 유사한 방식으로 작동합니다. 유일한 차이점은 new StirFry.extension() 대신 new StirFry() 사용하는 것입니다. 그런 다음 server.use(extension) 말할 수 있고 모든 청취자를 관리합니다. 여기 예입니다
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let extension = new StirFry . extension ( ) ;
extension . req ( function ( request , response ) {
let log = `Request recieved with ${ request . post ? ` ${ request . post } as post and ` : `` } ${ request . fullUrl || request . url } as the url. Recieved from ${ request . ip } on ` + formatDate ( new Date ( ) ) ; //Format date is defined externally
console . log ( log ) ;
} ) ;이는 내장 된 로거 확장과 유사합니다. 다음은 사용할 수있는 방법입니다
"use strict" ;
let server = new StirFry ( 8080 ) ;
server . use ( extension ) ;내장 로거는 사람들이 로그 파일을 정의 할 수 있기 때문에 확장자를 반환하는 함수입니다.
"use strict" ;
let StirFry = require ( 'stirfry' ) ;
let server = new StirFry ( 8080 ) ;
server . use ( StirFry . logger ( "logFile" ) ) ; request.post 연관 배열로 액세스하여 게시물 데이터에 액세스 할 수 있습니다.
1.6.0 기준으로 Stirfry는 서버에서 사용자 정의 레이어를 생성 할 수 있습니다. 이에 대한 구문 server.placeLayer 세 가지 함수 server.createLayer server.destroyLayer 됩니다. 생성 레이어를 작성할 레이어 이름 인 문자열을 가져옵니다. 파괴 레이어는 레이어를 작성하는 것과 동일하지만 IT를 생성하는 대신 제거합니다. 장소 레이어는 두 개의 레이어의 이름을 사용하여 첫 번째 입력과 동일한 이름을 가진 레이어가 항상 두 번째 입력의 이름을 가진 레이어 뒤에 호출되도록합니다.
"use strict" ;
let StirFry = require ( '../../stirfry.js' ) ;
let server = new StirFry ( 8080 , '0.0.0.0' ) ;
server . createLayer ( 'final' ) ;
server . placeLayer ( 'final' , 'request' ) ;
server . addListenerOnLayer ( 'final' , function ( req , res ) {
res . send ( 'Hello World!' ) ;
} ) ; Stir Fry의 원래 저자는 Alex Waese-Perlman입니다
모든 기고자 목록
MIT