Pesquisa de site

implantação - Preciso de ajuda sobre como implantar um servidor Node baseado em TypeScript no Vercel


Estou constantemente recebendo um erro Código: NÃO_ENCONTRADO no meu servidor executando o endpoint.

É principalmente um problema de configuração para um servidor node baseado em TypeScript. Já faz bastante tempo que estou enfrentando esse problema.

Além disso, o resumo da implantação nunca para de rodar:👇

Aqui está a estrutura de arquivos do diretório do meu servidor:

Server
   ├─ .env
   ├─ dist
   │  ├─ index.js
   │  └─ model
   │     └─ topic.js
   ├─ index.ts
   ├─ model
   │  └─ topic.ts
   ├─ package-lock.json
   ├─ package.json
   ├─ tsconfig.json
   └─ vercel.json

vercel.json

{
    "builds": [
        {
            "src": "dist/index.js",
            "use": "@vercel/node",
            "config": { "includeFiles": ["dist/**"] }
        }
    ],
    "routes": [
        {
            "src": "/(.*)",
            "dest": "dist/index.js"
        }
    ]
  }

Configurações do package.json que eu entendi pela metade de alguns blogs aleatórios

"scripts": {
    "start": "node ./dist/index.js",
    "build": "npx tsc",
    "ts.check": "tsc --project tsconfig.json",
    "add-build": "git add dist",
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev": "concurrently \"npx tsc --watch\" \"nodemon dist/index.js\""
  },
  "pre-commit": [
    "ts.check",
    "build",
    "add-build"
  ],

Erro :

Tudo está funcionando bem no meu uso local do servidor. Embora eu não esteja muito ciente de como exatamente resolver a implantação do servidor TypeScript. Isto é muito diferente de uma implantação normal de servidor Express baseada em Node JavaScript

Resposta #1

//tsconfig.json
"outDir": "./dist"

certifique-se de comentar esta linha no arquivo .gitignore.

.gitignore
dist