>source

이것은 StackOverflow에 대한 나의 첫 번째 질문입니다. 저는 풀스택 프로그래밍이 처음입니다. 로컬 Node.js Express 서버의 GET 메서드를 통해 JSON 파일에서 데이터를 가져오고 싶은 이 문제가 발생했습니다. 나는 지금 몇 시간 동안 인터넷을 검색하고 많은 활동을 읽었지만 무엇이 잘못되었는지 알아낼 수 없었습니다.

아이디어는 JSON 파일 목록에서 제품 목록이 보류되고 프런트 엔드에 로드된다는 것입니다.

잘 작동하는 메인 페이지가 있고 제품 ​​세부 정보를 로드할 수 없는 제품 페이지가 있습니다. 상품마다 아이디가 있는데 상품의 메인페이지를 클릭하면 해당 상품만 상품페이지에 로드됩니다.

프록시를 확인했는데 모두 잘 작동합니다. 콘솔에 다음이 표시되는지 확인하면 Failed to load:3000/api/products/[object%20Object]:1 리소스: 404(찾을 수 없음) 상태로 응답했습니다.

다음 code가 있습니다.

//서버.js

import data from './data.js';
const app= express();
app.get('/api/products/:id', (req, res)=> {
  const product= data.products.find((x)=> x._id=== Number(req.params.id));
  if (product) {
    res.send(product);
  } else {
    res.status(404).send({ message: 'Product Not Found' });
  }
});
app.get('/api/products', (req, res)=> {
  res.send(data.products);
});
app.get('/', (req, res)=> {
  res.send('Server is ready');
});
const port= process.env.PORT || 4000;
app.listen(port, ()=> {
  console.log(`Serve at http://localhost:${port}`);
});

//data.js(JSON 파일)

const data= {
    products:[
        {
            _id: 1,
            name: 'Stool',
            category: 'furniture',
            image: '/assets/images/p1.jpg',
            price: 120,
            countInStock: 9,
            brand: 'SKANANA',
            rating: 4.0,
            numReviews: 10,
            description: 'High Quality Product'
        }, {}, {} ],
}
export default data;


도움을 주시면 대단히 감사하겠습니다. 더 많은 설명이나 code가 필요하면 알려주십시오. :)

문제는 요청에 있습니다. :id 매개변수를 올바르게 전달하지 않습니다.

Luca Pizzini2021-11-20 01:39:15

프론트 엔드에서 API를 호출하는 방법을 보여줄 수 있습니까? id 매개변수가 올바르게 설정되지 않은 것 같습니다.

GabrielMC2021-11-20 01:39:15

물론, 여기에 내 프론트 엔드 code의 일부가 있습니다. export default function ProductScreen(props){ const dispatch= useDispatch(); const productId= useParams(); const productDetails= useSelector(상태=>state.productDetails); const { 로딩, 오류, 제품 }= productDetails; useEffect(()=>{ 디스패치(detailsProduct(productId)) }, [디스패치, 제품 ID]); 반품(제품...)}

Aron2021-11-20 01:39:15

위의 전체 프런트 엔드 code를 추가했습니다.

Aron2021-11-20 01:39:15
  • 이전 python : 이 서클 속성 문제 문제를 살펴보고 해결하려고 시도했지만 동일한 문제가 계속 발생합니다.
  • 다음 Salesforce에 "Book"이라는 개체가 있다고 가정해 보겠습니다.