forked from svrjs/svrjs
64 lines
No EOL
1.7 KiB
Markdown
64 lines
No EOL
1.7 KiB
Markdown
# SVR.JS Core
|
|
|
|
SVR.JS Core is a library for static file serving, built from SVR.JS source code.
|
|
|
|
Example code (with Node.JS "http" module):
|
|
```javascript
|
|
var http = require("http");
|
|
var fs = require("fs");
|
|
var url = require("url");
|
|
var svrjsCore = require("svrjs-core").init(); // Initialize SVR.JS Core
|
|
var server = http.createServer(function (req,res) {
|
|
if(url.parse(req.url).pathname == "/useragent") {
|
|
res.writeHead(200, "OK", {"content-type": "text-plain"}); // Output as plain text
|
|
res.end("Your user agent: " + req.headers["user-agent"]); // Send user agent
|
|
} else {
|
|
svrjsCore(req,res); // Serve static content
|
|
}
|
|
}).listen(8888);
|
|
```
|
|
|
|
Example code (with Express):
|
|
```javascript
|
|
var express = require("express");
|
|
var svrjsCore = require("svrjs-core");
|
|
|
|
var app = express();
|
|
app.use(svrjsCore());
|
|
|
|
app.listen(3000);
|
|
```
|
|
|
|
## Methods
|
|
|
|
### *svrjsCore([config])*
|
|
|
|
Parameters:
|
|
|
|
- *config* - the SVR.JS Core configuration (optional, *Object*)
|
|
|
|
Returns: the request handler for use in Node.JS HTTP server or Express, with three parameters (*req*, *res*, and optional *next*)
|
|
|
|
The *config* object is almost the same format as SVR.JS configuration. You can read about SVR.JS configuration properties in [the SVR.JS documentation](https://svrjs.org/docs/config/configuration).
|
|
|
|
However, only these SVR.JS configuration properties apply to SVR.JS Core:
|
|
- *users*
|
|
- *page404*
|
|
- *enableCompression*
|
|
- *customHeaders*
|
|
- *enableDirectoryListing*
|
|
- *enableDirectoryListingWithDefaultHead*
|
|
- *serverAdministratorEmail*
|
|
- *stackHidden*
|
|
- *exposeServerVersion*
|
|
- *dontCompress*
|
|
- *enableIPSpoofing*
|
|
- *enableETag*
|
|
- *rewriteDirtyURLs*
|
|
- *errorPages*
|
|
- *disableTrailingSlashRedirects*
|
|
- *allowDoubleSlashes*
|
|
|
|
### *svrjsCore.init([config])*
|
|
|
|
An alias to the *svrjsCore()* function |