CAUTION: TeqFW is an unstable project w/o backward compatibility. Use it at your own risk. |
---|
This teq
-plugin adds basic web server functionality to Tequila Framework based projects.
- console commands to start/stop web server in HTTP/1.1, HTTP/2, HTTPS modes;
- basic web requests processing with possibility to add various handlers;
- requests handlers:
-
TeqFw_Web_Back_App_Server_Handler_Final
: unprocessed requests responder; -
TeqFw_Web_Back_App_Server_Handler_Static
: GET requests for static resources; -
TeqFw_Web_Back_App_Server_Handler_Config
: GET requests to load various frontend configurations;
-
- move the IndexedDB functionality to some external plugin (@teqfw/front-idb?)
$ npm i @teqfw/web --save
This plugin uses TeqFw_Web
namespace.
$ node ./bin/tequila.mjs help
Usage: tequila [options] [command]
...
Commands:
web-server-start [options] Start web server.
web-server-stop Stop web server.
$ node ./bin/tequila.mjs help web-server-start
...
Options:
-c, --cert <path> certificates chain in PEM format to secure HTTP/2 server
-1, --http1 use HTTP/1 server (default: HTTP/2)
-k, --key <path> private key in PEM format to secure HTTP/2 server
-p, --port <port> port to use (default: 8080)
-s, --skipPid don't save PID file (used for read-only filesystems like Google AppEngine)
-w, --useWs use web sockets with this server
-h, --help display help for command
DTO for @teqfw/web
node.
{
"@teqfw/web": {
"server": {
"port": 8080,
"secure": {
"cert": "/path/to/cert.pem",
"key": "/path/to/key.pem"
},
"useHttp1": false
},
"urlBase": "domain.com"
}
}
DTO for @teqfw/web
nodes in teq
-plugins descriptors.
{
"@teqfw/web": {
"doors": ["admin", "pub"],
"excludes": {
"handlers": ["Ns_Mod"]
},
"handlers": {
"Ns_Mod": {
"after": ["Ns_Mod"],
"before": ["Ns_Mod"],
"spaces": ["custom"]
}
},
"statics": {
"/url-path/": "/filesystem-path/"
}
}
}