You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
755 B
JavaScript
27 lines
755 B
JavaScript
const { createServer } = require("@vue-storefront/middleware");
|
|
const { integrations } = require("./middleware.config");
|
|
const cors = require("cors");
|
|
|
|
(async () => {
|
|
const app = await createServer({ integrations });
|
|
const host = process.argv[2] ?? "0.0.0.0";
|
|
const port = process.argv[3] ?? 8181;
|
|
const CORS_MIDDLEWARE_NAME = "corsMiddleware";
|
|
|
|
const corsMiddleware = app._router.stack.find(
|
|
(middleware) => middleware.name === CORS_MIDDLEWARE_NAME
|
|
);
|
|
|
|
corsMiddleware.handle = cors({
|
|
origin: [
|
|
"http://localhost:3000",
|
|
...(process.env.MIDDLEWARE_ALLOWED_ORIGINS?.split(",") ?? []),
|
|
],
|
|
credentials: true,
|
|
});
|
|
|
|
app.listen(port, host, () => {
|
|
console.log(`Middleware started: ${host}:${port}`);
|
|
});
|
|
})();
|