ExpressJSに代わるゼロ依存性の代替。 Web APIと静的ファイルサーバーをCoding CafeのTwitchでライブにするための快適な方法を構築しました!
WebWebWebを使用すると、わずか数行のコードでAPIを備えたWebサーバーを非常に簡単に作成できます。
Let's EncryptのSSL証明書を備えたSecure Webサーバーが必要な場合は、WebWebWebのシンプルさを維持しながら自動的に取得して更新するWebWebWebsをチェックしてください。
これらのプロジェクトのように?私のオープンソースプロジェクトをサポートする最良の方法は、Githubで快適なスポンサーになることです!
https://github.com/sponsors/instafluff
Twitchの最も快適なコーナーで私たちと一緒に来てください!
https://twitch.tv/instafluff
webwebweb
をインストールします npm install webwebweb --save
/web
はhttp://locahost:8099/web
ルートディレクトリ/
および静的ファイル(画像、スクリプト、その他のHTMLページなど)に配置できます/public
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はデフォルトで有効になっています。 CORを無効にするには、 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、odchgamer46、antivigames、aj2017 Rockysenpai24、Tabetaicooking、sparky_pugwash、violettepanda、theskidragon、 radiocaf、linkenetwork、jawibae、elysiagriffin、darrnyh、jellydance、devmerlin、marss112、roberttables、tiger_k1ng、lilyhazel、psychosys82、bungalowglow、stay_hydrated_bot、pookiepie、wolgeardy、wolbeardy、wolbeardy、 Sausagecam、Kyoslilmonster、Endlessmoonfall、jd_hirsch、Guthron、 ShinageEexpress、Jmswrnr、Schmiel_show、Kitannlive、Space_Butts、Lukepistachio、Pipskidoodle、Kara_kim、Sieepymia、Itsmechrisg、Tapemoose、Xandyctz、Thrennenne、Kollecz、Hitheria、Yourstrulygreed