Skip to content

Commit a66100c

Browse files
committed
feat: provide hook to configure express
1 parent 8cb50bc commit a66100c

File tree

1 file changed

+11
-0
lines changed
  • src/framework/server/setup-http-server

1 file changed

+11
-0
lines changed

src/framework/server/setup-http-server/index.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1+
// @flow
2+
13
import path from 'path';
24
import express from 'express';
35
import cookiesMiddleware from 'universal-cookie-express';
46
import getWebpackSettings from '../../../shared/webpack-settings';
57
import argv from '../../../internals/rjs-argv';
68
import logger from '../../../shared/logger';
79
import { getDefault } from '../../../shared/util/ModuleUtil';
10+
import ServerHooks from '../server-hooks';
811

912
const webpackClientConfig = getWebpackSettings(/* is server */ false);
1013
const httpStaticPath = webpackClientConfig.output.publicPath;
@@ -32,6 +35,14 @@ export default function setupHttpServer(expressApp) {
3235
res.sendFile(clientEntryPoint);
3336
});
3437
} else {
38+
const serverHookClasses = ServerHooks.map(hookModule => getDefault(hookModule));
39+
40+
for (const serverHookClass of serverHookClasses) {
41+
if (serverHookClass.configureServerApp) {
42+
serverHookClass.configureServerApp(expressApp);
43+
}
44+
}
45+
3546
import('./serve-react-route').then(module => {
3647
const serveReactRoute = getDefault(module);
3748

0 commit comments

Comments
 (0)