useMockServer
This composable is the main entry point for the nuxt-mock-server
module. It allows you to interact with the mock server in a more programmatic way.
It currently exports five utilities which can be called to manage everything preset wise.
This composable only works in a nitro's request context, meaning that it receives an H3Event
.
TIP
There is no need to import this composable, it's already available through auto-imports.
getPresets
This function returns all the presets that are currently available in the mock server.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
return mockServer.getPresets();
});
getPreset
Similar to getPresets
except that it returns only one preset.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.getPreset(query.toString());
});
existsPreset
This function checks if a preset exists.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.existsPreset(query.toString());
});
setPreset
This function sets the given preset as the current one.
TIP
If the given preset does not exist, it will be created.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.setPreset(query.toString());
});
deletePreset
This function deletes the given preset.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.deletePreset(query.toString());
});
WARNING
The mock-server always needs a current preset, this means that if the current one is deleted, the first in the list (alphabetic) will be set.
There is no clear strategy to handle this yet but it's something that will be tackled soon. An alternative is to set a default preset by yourself after deleting it.
generatePreset
This function generates mocks for a preset based on the provided routes. If no routes are provided at all, from any of the sources it won't generate anything.
Check the examples about configuring routes here.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.generatePreset(query.toString());
});
By default this function will also clean (delete) the current preset before generating the new mocks. To disable the behaviour pass false
as the second argument.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
const query = getQuery(event);
return mockServer.generatePreset(query.toString(), false);
});
pause
/ resume
These functions allow you to pause or resume the mock server programatically.
WARNING
If the mock server is disabled on runtimeConfig level, it won't be possible to pause/resume it.
export default defineEventHandler((event) => {
const mockServer = useMockServer(event);
return mockServer.pause();
});