ExpressJS에 대한 제로 의존성 대안. 우리는 웹 API와 정적 파일 서버를 Coding Cafe를 위해 Twitch에서 라이브로 만드는 가장 편한 방법을 구축했습니다!
WebWebWeb을 사용하면 몇 줄의 코드로 APIS 슈퍼가있는 웹 서버를 쉽게 만들 수 있습니다.
Let 's Encrypt의 SSL 인증서가있는 보안 웹 서버가 필요한 경우 WebWebWeb의 단순성을 유지하면서 자동으로 검색하고 갱신하는 WebWebWebs를 확인하십시오!
이 프로젝트처럼? 내 오픈 소스 프로젝트를 지원하는 가장 좋은 방법은 Github에서 편안한 스폰서가되는 것입니다!
https://github.com/sponsors/instafluff
Twitch의 가장 편한 코너에서 우리와 어울리십시오!
https://twitch.tv/instafluff
webwebweb
설치하십시오 npm install webwebweb --save
/
정적 파일 (예 : 이미지, 스크립트 및 기타 HTML 페이지)에 배치 할 수 있으며 /web
또는 /public
로 이동할 수 있으며 http://locahost:8099/web
에서 자동으로 제공됩니다. http://locahost:8099/web
또는 http://localhost:8099/public
require ( "webwebweb" ) . Run ( 8099 ) ;
var ComfyWeb = require ( "webwebweb" ) ;
ComfyWeb . APIs [ "/" ] = ( qs , body , opts ) => {
return { "test" : "example!" } ;
} ;
ComfyWeb . Run ( 8099 ) ;
WebWebWeb 의 Run()
함수는 여러 선택적 매개 변수를 허용합니다.
모든 요청 방법은 API 핸들러로 전송됩니다. 응답에 대한 opts.req.method
값을 확인하고 데이터의 신체 개체를 구문 분석 할 수 있습니다.
var ComfyWeb = require ( "webwebweb" ) ;
ComfyWeb . APIs [ "/account" ] = ( qs , body , opts ) => {
switch ( opts . req . method ) {
case "GET" :
return { "account" : "test" } ;
case "POST" :
return JSON . parse ( body ) ;
case "PUT" :
return { "status" : "updated" } ;
case "DELETE" :
return { } ;
}
} ;
ComfyWeb . Run ( 8099 ) ;
요청 객체는 API 핸들러로 전달됩니다. opts.req.headers
에서 헤더 값을 확인할 수 있습니다.
var ComfyWeb = require ( "webwebweb" ) ;
ComfyWeb . APIs [ "/" ] = ( qs , body , opts ) => {
return opts . req . headers ;
} ;
ComfyWeb . Run ( 8099 ) ;
실제로 CORS는 기본적으로 활성화됩니다. CORS를 비활성화하려면 useCORS
매개 변수를 설정합니다.
var ComfyWeb = require ( "webwebweb" ) ;
ComfyWeb . Run ( 8099 , {
useCORS : false
} ) ;
TLS 지원을 추가하려면 인증서, 키 및 인증 체인 파일로 경로를 전달하십시오.
var ComfyWeb = require ( "webwebweb" ) ;
ComfyWeb . Run ( 8099 , {
Certificate : "cert.pem" ,
PrivateKey : "key.pem" ,
CertificateChain : "chain.pem"
} ) ;
이 프로젝트의 모든 참가자들에게 감사합니다!
MacAbearman, Instafriend, that_ms_gamer, Instafluff, Chattranslator, Sethorizer, Simrose4u, Gilokk0, Rikachet, Ultrahal1, Saltprincessgretchen, Ella_fint, Dutchgamer46, Antivigames, AJ2017, SoundofgeArd, MyLlywizaL, MERLINEWIZER, MERLINEWIZER enpai24, tabetaicooking, sparky_pugwash, violettepanda, theskidragon, Radiocaf, Linkonetwork, Jawibae, Elysiagriffin, Darrnyh, Jellydance, Devmerlin, Marss112, Roberttables, Tiger_k1ng, Lilyhazel, Psychosys82, Bungalowglow, stay_hydrated_bot, pookiepew, wil_bennetten, wolfousgon, woldouphl Agecam, Kyoslilmonster, Endlessmoonfall, JD_Hirsch, Guthron, Shinageeexpress, jmswrnr, schmiel_show, kitannlive, space_butts, lukepistachio, pipskidoodle, kara_kim, sieepymia, itsmechrisg, tapemoose, Xandyctz, Thrennenne, Kollecz, Hytheria, 당신의 Strulygreed