src/portal/server/README.md
Mocked Api-server based on "Node.js" + "Express" + "Typescript"
How to use?
suppose you want to mock a api server for below code:
getScannersByName(name: string): Observable<Scanner[]> {
name = encodeURIComponent(name);
return this.http.get(`/api/scanners?ex_name=${name}`)
.pipe(catchError(error => observableThrowError(error)))
.pipe(map(response => response as Scanner[]));
}
mockApi.get('/api/v2.0/scanners', Controllers.getScanner);
export function getScanner(req: Request, res: Response) {
const scanners: Scanner[] = [new Scanner(), new Scanner()];
res.json(scanners);
}
3.cd portal and run
npm run mock-api-server
4.Edit the file proxy.config.json, and add a proxy object at the top as below:
[
// redirect requests to the mocked api server
{
"context": [
"/api/v2.0/scanners"
],
"target": "http://localhost:3000",
"secure": false,
"changeOrigin": true,
"logLevel": "debug"
},
// redirect requests to the back-end server
{
"context": [
"/api",
"/c",
"/i18n",
"/chartrepo",
"/LICENSE",
"/swagger.json",
"/swagger2.json",
"/devcenter-api-2.0",
"/swagger-ui.bundle.js"
],
"target": "https://hostname",
"secure": false,
"changeOrigin": true,
"logLevel": "debug"
}
]
npm run start, then all the mocked APIs will be redirected to the mocked server