【问题标题】:How can I start an Express app using Now?如何使用 Now 启动 Express 应用程序?
【发布时间】:2019-10-15 19:26:49
【问题描述】:

部署到 Now 时,我正在尝试构建和启动 Express 服务器。它目前正在构建,但尚未启动服务器。

我的 package.json 看起来像这样,是我遗漏了什么吗?

"scripts": {
    "dev": "node server.js",
    "build": "next build && cross-env NODE_ENV=production node server.js",
    "start": "cross-env NODE_ENV=production node server.js",
    "export": "next build && next export"
  }

【问题讨论】:

  • 现在哪个版本? v1 还是 2?
  • 我没有具体说明,所以我假设它默认为 v2!
  • 您应该在now.json 中指定版本:1 或2。您现在可以适当地解决问题
  • 这对解决问题有什么帮助?
  • 他们有不同的配置。

标签: node.js vercel


【解决方案1】:

我有一个名为 /utilities/app.ts 的文件,我在其中设置了我的常用快速配置(这是我使用的,但您可以根据需要添加/删除内容):

import express from 'express';
import helmet from 'helmet';
import { commonMiddlewares } from '../middlewares'
const expressApp = express();
expressApp.use(helmet());
expressApp.set("trust proxy", 1);
expressApp.use(...commonMiddlewares);
export const app = expressApp;

然后在我想使用 express 的 api 端点中导入这个实用程序:

import { app } from "../utilities/app";
import { Request, Response } from "express";
app.get("*", async (req: Request, res: Response) => { ... })

【讨论】:

    猜你喜欢
    • 2016-09-19
    • 1970-01-01
    • 2012-11-10
    • 1970-01-01
    • 2012-10-30
    • 2016-06-13
    • 1970-01-01
    • 2012-11-10
    • 2017-03-07
    相关资源
    最近更新 更多