Serve static responses, proxy responses and generate random responses from swagger specs.
npm install --global @ftes/fake-server(or
yarn global add @ftes/fake-server)
- Copy the config directory into your application directory.
- Adapt the
configuration.jsin the copied
configdirectory to your needs.
The main idea is to store the fake server configuration alongside your app. You can then run the global
fake-server installation with this app-specific config to generate responses.
The exported function in
<configDir>/configuration.js is called with the express
app instance, the available
middleware and all command line options.
Responses can be manually added as files. Also, proxied responses and swagger-generated ones are stored to this directory.
Mapping requests to files
The file matching a request is expected to be present at
If a segment of
req.path does not have a matching directory the
* directory at that level is used as fallback (if present).
If several matching files are present (multiple status codes) then a random one of these is selected.
The order in which path segments are replaced with a
* is shown in
The responses can be manually added. Also, proxied responses and swagger-generated ones are stored to this directory, if the
recordData: true is passed to the middleware.
You can use the provided middleware in your
configuration.js. This includes:
Optionally, you can add a
pre-configuration.js to your configuration directory.
This is invoked before any other middleware is registered on the express instance.
A potential use-case is sanitizing the request for the
body-parser middleware (see this bug).
docker run -v <your-config-dir>:/usr/src/app/config -p 1337:1337 @ftes/fake-server