【发布时间】:2022-01-01 14:59:32
【问题描述】:
我在 localhost:3001 上创建了一个 json-server,但是当我获取该数据时,它返回给我的是 HTML 而不是 JSON。
这是我的 JSON 数据
{
"articles": [
{
"id": "1",
"title": "title1",
"author": "Ben",
"body": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Nisi, ullam eos dignissimos aperiam rerum qui suscipit cum nobis, totam ea tenetur perferendis praesentium corporis possimus ducimus et minima voluptatum. Numquam mollitia culpa consectetur unde illum est aut dicta eligendi vero molestias impedit sint, maiores saepe voluptas necessitatibus excepturi ducimus repudiandae, non quidem nobis veritatis! Libero neque, cumque illo est corrupti eaque recusandae ipsum, ut debitis vitae molestias deleniti voluptates distinctio sapiente autem. Tempore aperiam minima sit atque, tempora doloribus blanditiis id ipsum. Distinctio quos nisi, totam sunt ex voluptatum? Neque alias laborum ipsum doloremque fuga earum in autem. Hic alias omnis facilis facere eum assumenda deleniti ad, maiores laudantium temporibus odio non, molestiae dolorum! Quo mollitia ex sapiente maiores excepturi?"
},
{
"id": "2",
"title": "title2",
"author": "Joseph",
"body": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Nisi, ullam eos dignissimos aperiam rerum qui suscipit cum nobis, totam ea tenetur perferendis praesentium corporis possimus ducimus et minima voluptatum. Numquam mollitia culpa consectetur unde illum est aut dicta eligendi vero molestias impedit sint, maiores saepe voluptas necessitatibus excepturi ducimus repudiandae, non quidem nobis veritatis! Libero neque, cumque illo est corrupti eaque recusandae ipsum, ut debitis vitae molestias deleniti voluptates distinctio sapiente autem. Tempore aperiam minima sit atque, tempora doloribus blanditiis id ipsum. Distinctio quos nisi, totam sunt ex voluptatum? Neque alias laborum ipsum doloremque fuga earum in autem. Hic alias omnis facilis facere eum assumenda deleniti ad, maiores laudantium temporibus odio non, molestiae dolorum! Quo mollitia ex sapiente maiores excepturi?"
},
{
"id": "3",
"title": "title3",
"author": "Jeff",
"body": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Nisi, ullam eos dignissimos aperiam rerum qui suscipit cum nobis, totam ea tenetur perferendis praesentium corporis possimus ducimus et minima voluptatum. Numquam mollitia culpa consectetur unde illum est aut dicta eligendi vero molestias impedit sint, maiores saepe voluptas necessitatibus excepturi ducimus repudiandae, non quidem nobis veritatis! Libero neque, cumque illo est corrupti eaque recusandae ipsum, ut debitis vitae molestias deleniti voluptates distinctio sapiente autem. Tempore aperiam minima sit atque, tempora doloribus blanditiis id ipsum. Distinctio quos nisi, totam sunt ex voluptatum? Neque alias laborum ipsum doloremque fuga earum in autem. Hic alias omnis facilis facere eum assumenda deleniti ad, maiores laudantium temporibus odio non, molestiae dolorum! Quo mollitia ex sapiente maiores excepturi?"
}
]
}
这是我的 UseFetch 钩子:
import { useEffect, useState } from "react";
function UseFetch({urlParam}){
const [data,setData] = useState([]);
const [isDepending,setIsDepending] = useState(false);
const [error, setError] = useState(null);
const [url,setUrl] = useState(urlParam);
useEffect(() => {
async function fetchingData() {
setIsDepending(true)
try{
const fetchingProcess = await fetch(url);
if(!fetchingProcess.ok){
throw new Error('bad connection')
}
const jsonData = await fetchingProcess.json();
console.log(jsonData);
setIsDepending(false)
setData(jsonData)
}catch(e){
setError('sorry request encountred a problem')
setIsDepending(false)
}
}
fetchingData();
setUrl(urlParam);
}, [url])
return {data, isDepending, error};
}
export default UseFetch;
毕竟,我在记录错误时将其发送到控制台
Unexpected token < in JSON at position 0
reactApp 和 json-server 位于 2 个单独的端口上。
【问题讨论】:
-
当您将
fetchingProcess.json()替换为fetchingProcess.text()时,您在控制台中看到了什么?看起来 json-server 试图告诉你一些事情。 -
这是 HTML 文本:
-
使用
JSON.parse()解析它
标签: javascript html reactjs json json-server