如何使用 express

问题描述

我正在尝试使用 express 运行 cubeJs 后端应用程序。我添加了如下代码更改。 我用下面的代码创建了 cube.js 文件

const express = require('express');
const path = require('path');

const expressApp = express();

const options = {
basePath: 'cube'
  }
  require('dotenv').config();
const core = CubejsServerCore.create(options);
core.initApp(expressApp);

我使用了 .env 文件作为环境变量。当我使用 node cube.js 运行应用程序时,应用程序启动并连接到数据库。但是,当我尝试使用 http://localhost:4000 在浏览器中加载时,它没有加载。

这是我的 .env 值:

CUBEJS_DB_HOST=localhost
CUBEJS_DB_PORT=5438
CUBEJS_DB_NAME=test
CUBEJS_DB_USER=postgres
CUBEJS_DB_PASS=test
CUBEJS_DEV_MODE=true
CUBEJS_DB_TYPE=postgres
CUBEJS_API_SECRET=b6e176d3942fd2811bacfd2b5e5dd00b47aae3f07d92000961f17c60f4d9a30eca5bfde0e1f2d460d9e358a0a6be7b3fa6812f245713915a1effea402a716c13
CUBEJS_EXTERNAL_DEFAULT=true
CUBEJS_SCHEDULED_REFRESH_DEFAULT=true
CUBEJS_WEB_SOCKETS=true

解决方法

将 Cube.js 嵌入 Express(任何其他框架/应用程序中)is deprecated

我建议您运行 Cube.js with Docker,因为它比将其嵌入 Express 应用程序更好。

此链接也可能有用:https://cube.dev/blog/cubejs-loves-docker