javascript next.js语法错误:JSON中位置0处的意外标记〈

6l7fqoea  于 2023-01-07  发布在  Java
关注(0)|答案(1)|浏览(206)

API正在工作,我可以在其他页面上使用此API。但此页面不能,我不知道哪里出错了??代码:

export async function getStaticPaths() {
  const response = await fetch("http://localhost:8080/students");
  const data = await response.json();

  const paths = data.map((d) => {
    return {
      params: {
        id: d._id.toString(),
      },
    };
  });

  return {
    paths,
    fallback: false,
  };
}

export async function getStaticProps({ params }) {
  const response = await fetch(`http://localhost:8080/students/${params.id}`);
  const data = await response.json();
  return {
    props: {
      data,
      S,
    },
  };
}

export default function StudentProfile({ data }) {
  return (
    <div>
      <h1>{data.name}</h1>
      <h1>{data.age}</h1>
      <h1>{data.id}</h1>
    </div>
  );
}

错误消息:
服务器错误语法错误:JSON中位置0处的意外标记〈生成页面时发生此错误。任何控制台日志都将显示在终端窗口中。pages/profile/[ id]. js(26:15)@async getStaticProps 24|导出异步函数getStaticProps({params}){25|常量响应=等待获取(http://localhost:8080/students/${params.id}); 26|常量数据=等待响应. json();|二十七|返回{28| prop :{29|数据,
我确信API连接成功,这段代码可以成功运行并显示数据:

export async function getStaticProps() {
  const respone = await fetch("http://localhost:8080/students");
  const data = await respone.json();
  return {
    props: {
      data,
    },
  };
}

export default function StaticGenerationPage({ data }) {
  return (
    <div>
      {data.map((d) => {
        return <h1>{d.name + " " + d._id}</h1>;
      })}
    </div>
  );
}

是否存在其他潜在的错误原因?

4jb9z9bj

4jb9z9bj1#

Unexpected token < in JSON at position 0表示API返回的JSON无效
此外,getStaticProps无法访问传入请求(如查询参数或HTTP头),请参见getStaticProps文档。

相关问题