5

我的 Next.js 站点 ( /flats/[id].js) 在pages文件夹中有一个页面。

这是我的页面

import React, { useState, useEffect } from "react";
import styled from "styled-components";

export default function FlatPage() {
  return (
    <Wrapper>
      <Meta title="FlatDetail" />
      <>Hello</>
    </Wrapper>
  );
}

const Wrapper = styled.div`
  padding: 20px;
`;

出于某种原因,我在导航到页面时收到此错误。

This Serverless Function has timed out.

Your connection is working correctly.

Vercel is working correctly.

504: GATEWAY_TIMEOUT

Code: FUNCTION_INVOCATION_TIMEOUT

ID: fra1::kzjbt-1639939593230-a5edd370b414

控制台日志:

[GET] /flats/16

15:35:23:41

Function Status: None

Edge Status: 504

Duration: 10009.74 ms

Init Duration: N/A

Memory Used: 243 MB

ID: ht6mw-1640010923026-45feee3fd9fb

User Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.1 Mobile/15E148 Safari/604.1

2021-12-20T14:35:33.481Z 604f5a2d-3856-42c8-8a7c-72f1cc7d2b64 Task timed out after 10.01 seconds



[GET] /_next/data/qRevoA7v7ps_tbqeAEfjl/en/flats/16.json?id=16

15:35:11:99

Function Status: None

Edge Status: 504

Duration: 10007.67 ms

Init Duration: 397.63 ms
Memory Used: 284 MB
ID: ht6mw-1640010911602-b24295905176
User Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.1 Mobile/15E148 Safari/604.1

2021-12-20T14:35:22.853Z 9bdd796b-22a9-4159-b97a-6c9392189986 Task timed out after 10.01 seconds

我不知道为什么该功能超时(页面上没有太多内容),而且它在本地也可以正常工作。

无服务器函数超时的条件来自 Next.js 文档

超时条件清单 如果您看到执行超时错误,请检查以下可能的原因:

该函数没有返回响应:

  1. 该函数必须返回一个 HTTP 响应,即使该响应是错误的。如果没有返回响应,该函数将超时。
  2. 函数处理请求的时间过长:检查您在函数中发出的任何 API 或数据库请求是否在适用于您的计划的“无服务器函数执行超时(秒)”限制内响应。
  3. 您的函数中有一个无限循环:检查您的函数在执行的任何阶段是否都没有无限循环。
  4. 存在上游错误:检查您尝试调用的任何外部 API 或数据库是否没有任何错误。
  1. 我什至没有使用任何无服务器功能
  2. 没有数据库或 api 调用
  3. 没有
  4. 只是打印你好!

更新:我发现这只发生在 getServerSideProps 上,即使返回的道具是“Hello World”

export const getServerSideProps = async (context) => {
const h = "Hello World"

return {
  props:{h}
 }
}
4

0 回答 0