标签: vercel

在使用 ZEIT Now 部署的 Next.js 应用程序中使用绝对导入

在 Next.js 9 教程中,推荐的导入共享组件的方法是通过相对路径,例如

import Header from '../components/Header';
Run Code Online (Sandbox Code Playgroud)

我想使用绝对进口,比如

import Header from 'components/Header';
Run Code Online (Sandbox Code Playgroud)

我如何在本地和使用 Now CLI 进行部署时使其工作?


使用教程中建议的设置,我的项目结构是:

my-project
??? components
??? pages
??? package.json
Run Code Online (Sandbox Code Playgroud)

next.js vercel

8
推荐指数
1
解决办法
5458
查看次数

如何使用无服务器功能获取 RAW Body?

我正在 Zeit Now 上从 Express 迁移到无服务器功能。

Stripe webhook 文档要求提供原始正文请求,使用 Express 时我可以通过 bodyParser 获取它,但是它如何在无服务器功能上工作?如何以字符串格式接收正文以验证条带签名?

支持团队将我重定向到这个文档链接,我很困惑,据我所知,我必须传入text/plain请求标头,但我无法控制它,因为 Stripe 是发送 webhook 的那个。

export default async (req, res) => {
    let sig = req.headers["stripe-signature"];
    let rawBody = req.body;
    let event = stripe.webhooks.constructEvent(rawBody, sig, process.env.STRIPE_SIGNING_SECRET);
    ...
}
Run Code Online (Sandbox Code Playgroud)

在我的函数中,我req.body作为一个对象接收,我该如何解决这个问题?

node.js serverless vercel

8
推荐指数
1
解决办法
573
查看次数

Vercel next.js 部署功能日志,无需第三方

一直在尝试使用 Vercel 进行部署,并且非常喜欢它的简单性。也许我在这里没有看到任何东西,但是如何在不通过管道传输到第三方的情况下获得函数的可见性?

我有这个pages/api/hello.js-api

export default (req, res) => {
    console.log("yolo");
    res.statusCode = 200;
    res.json({ name: "John Doe" });
};
Run Code Online (Sandbox Code Playgroud)

然后我可以在仪表板中看到以下结果。但是我在哪里或如何才能看到yolo并且我在这里丢失了一些东西?有其他正确调试方法吗?

在此输入图像描述

node.js next.js serverless vercel

8
推荐指数
1
解决办法
3537
查看次数

如何修复 Vercel 的 NestJS 部署错误?

在此输入图像描述

这是 now.json

{
  "version": 2,
  "name": "nestjs-now",
  "builds": [
    {
      "src": "dist/main.js",
      "use": "@now/node"
    }
  ],
  "routes": [
    {
      "src": "/(.*)",
      "dest": "dist/main.js"
    }
  ]
}

Run Code Online (Sandbox Code Playgroud)

我不确定原因是什么以及如何解决。我只是按照 vercel 教程部署了 Nestjs 后端项目,但不起作用。它包括 GraphQL API 和 Rest API 以及 socket.io 服务器。

deployment backend node.js vercel nestjs

8
推荐指数
1
解决办法
7746
查看次数

如何从同一个 monorepo 在 Vercel 上部署前端和后端?

有关从已部署前端的单一存储库将后端部署到 Vercel 的问题。

\n

我正在 monorepo 中开发一个完整的堆栈项目(我的第一个项目)。该存储库包含client目录server,如下所示:

\n
project\n\xc2\xa6   README.md and other general stuff\n\xc2\xa6   \n+---client\n\xc2\xa6       src and other client stuff\n+---server\n\xc2\xa6       src and other server stuff\n
Run Code Online (Sandbox Code Playgroud)\n

我已经使用 Vercel 的 git 集成部署了客户端,即我向他们提供了存储库的 URL,并指定了他们应该在其中查找源代码的可选根目录。这表明/client它工作正常。当我推送到 master 时,部署会自动发生。

\n

现在我开始构建 GraphQL 后端,并且我已经准备好部署第一个版本以验证一切正常。我计划通过在 Vercel 上创建一个新项目来实现这一点,就像我在前端中所做的那样,然后只需指定根目录而/server不是/client. 问题是,当我这样做时,我被重定向到前端的部署并显示一条消息“该项目已存在”,因为我输入的 GitHub 存储库 URL 已存在于他们的系统中。

\n

有没有办法可以从同一个存储库将我的后端部署在 Vercel 上,或者我应该使用 Netlify 或 Heroku 等其他提供商来部署它?

\n

vercel

8
推荐指数
1
解决办法
1万
查看次数

Next.js:如何为具有多个域/主机名的站点使用 getStaticProps/getStaticPaths?

我正在构建一个具有结构的站点https://[sub.domain.ext]/[language]/articles/[slug],但是它在不同的域(不同的主机名)上会有不同的内容。

一个典型的用例是相同内容的不同语言翻译的不同子域:en.mysite.com、fr.mysite.com 等。

我不想诉诸服务器端渲染使用getServerSideProps(如果内容很少更改,则性能会降低并且不必要)。我可以以某种方式使用getStaticProps/getStaticPaths生成静态站点吗?

这是我当前的siteId = 1硬编码实现:

import React from 'react'
import { useRouter } from 'next/router'

import Page from 'components/page/Page'
import Error from 'components/page/Error'
import ArticleList from 'components/articles/ArticleList'

const { runDatabaseFunction } = require('lib/database')
const { getArticlesForSiteAndLanguage } = require('lib/data/articles')

function ArticleListPage ({ site, articles, error }) {
  const { asPath } = useRouter()
  const title = 'News'
  return (
    <Page
      title={title}
      site={site}
      path={asPath}
    >
      <h1>{title}</h1>

      {error && <Error …
Run Code Online (Sandbox Code Playgroud)

reactjs next.js vercel

8
推荐指数
1
解决办法
1971
查看次数

Vercel next.js 环境变量不起作用

我在 Next.js 项目中使用谷歌地图,一切都在本地运行。谷歌地图密钥存储在 next.config.js 中,我通过 process.env.NEXT_PUBLIC_GOOGLEMAPS 在代码中访问它

当我将项目部署到 Vercel 时,出于安全原因,我没有包含 next.js.config。所以我在“设置”->“环境变量”下添加了该密钥 在此输入图像描述

但是,环境变量在生产中不起作用。当我控制台日志 process.env.NEXT_PUBLIC_GOOGLEMAPS 时,我得到 undefined

是什么原因导致此问题以及如何解决它?谢谢

javascript google-maps reactjs next.js vercel

8
推荐指数
1
解决办法
2万
查看次数

如何调试或处理 Vercel FUNCTION_INVOCATION_FAILED 错误?

我从 Vercel 收到此错误。当我导航时,它会在随机时间和页面上弹出。浏览器控制台中没有出现错误。Vercel 仅记录构建时错误,因此也没有信息。

也许 Vercel 或 Next.js 内存不足?这些导航大部分都有效,“功能调用失败”错误很少发生。就像幽灵一样。

在此输入图像描述

next.js vercel

8
推荐指数
1
解决办法
2万
查看次数

Vue 路由器可以在开发服务器上运行,但不能在 vercel vite 上运行

我正在使用 vite 制作一个项目,该项目使用 vue-router@4。它工作得很好,但是当查看 vercel 或 netlify 上的链接时,我收到 404 错误。这是我的 index.js 文件(路由器设置)

import { createRouter, createWebHistory } from "vue-router";
import Home from "../views/Home.vue";
import Admin from "../views/Admin.vue";
import List from "../views/List.vue";

const router = createRouter({
  history: createWebHistory(),
  routes: [
    {
      path: "/",
      component: Home,
    },
    {
      path: "/adminpanel",
      component: Admin,
    },
    {
      path: "/list",
      component: List
    }
  ],
});

export default router;

Run Code Online (Sandbox Code Playgroud)

我做错了什么吗?感谢您的帮助。

vue.js vue-router netlify vercel vite

7
推荐指数
1
解决办法
4704
查看次数

Laravel 如何在 vercel 中部署

我正在尝试在 Vercel 中部署 Laravel 8 项目,但是,我经常遇到此错误:

错误:构建完成后找不到名为“dist”的输出目录。您可以在项目设置中配置输出目录。

我已按照此处提到的步骤进行操作,但不幸的是它显示了相同的错误。以前有人遇到过这样的问题吗?

deployment web-deployment vercel laravel-8

7
推荐指数
1
解决办法
7267
查看次数