NextJS 上的 getServerSideProps 将本地主机转换为 ::1

问题描述 投票:0回答:0

我有一个 NextJS 项目,它有一个索引页面:

pages/index.jsx

const Home = NextPage<Props> = (props) => {
    ...
    ...
    ...
}

export default async function getServerSideProps() {
    posts = await('http://localhost:8000/posts/')
    return {
        props: { posts }
    }
}

但是获取请求的域正在更改为 ipv6 地址 (::1),这会导致连接被拒绝错误。 (后端服务器不接受 ipv6 请求)

我的问题是为什么 NextJS 在 getServerSideProps 上这样做? (从前端获取请求不是做同样的事情)

这里是关于我的问题的更多信息:

试图获取的 URL:http://localhost:8000/posts/?ishot=true 该获取请求的选项:

{
  mode: 'cors',
  cache: 'no-cache',
  credentials: 'include',
  headers: {},
  redirect: 'follow',
  method: 'GET'
}

我收到的错误:

error - TypeError: fetch failed
    at Object.fetch (node:internal/deps/undici/undici:14152:11)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  cause: Error: connect ECONNREFUSED ::1:8000
      at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1494:16) {
    errno: -61,
    code: 'ECONNREFUSED',
    syscall: 'connect',
    address: '::1',
    port: 8000
  },
  page: '/'
}
next.js fetch getserversideprops
© www.soinside.com 2019 - 2024. All rights reserved.