如何从 Hygraph 获取我的帖子并在我的 React 应用程序上显示它们

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

我想将我的 React 应用程序与 hygraph 连接起来,以在页面上显示我的帖子。我在编写http请求时遇到问题,我从chatgpt得到了这样的例子:

import React, { useState, useEffect } from 'react';

const YourComponent = () => {
  const [data, setData] = useState([]);
  const apiUrl = 'myApiUrl';
  const apiToken = 'myApiToken';

  useEffect(() => {
    const fetchData = async () => {
      try {
        const response = await fetch(apiUrl, {
          method: 'POST',
          headers: {
            'Content-Type': 'application/json',
            Authorization: `Bearer ${apiToken}`,
          },
          body: JSON.stringify({
            query: `
              query Komunikaty {
                komunikaty {
                  date
                  id
                  publishedAt
                  title
                }
              }
            `,
          }),
        });

        const result = await response.json();
        setData(result.data.komunikaty);
      } catch (error) {
        console.error('Error fetching data:', error);
      }
    };

    fetchData();
  }, []);

  return (
    <div>
      <h1>Your CMS Data</h1>
      <ul>
        {data.map(item => (
          <li key={item.id}>
            <strong>{item.title}</strong> - {item.publishedAt}
          </li>
        ))}
      </ul>
    </div>
  );
};

export default YourComponent;

但是回应是response

我应该怎样做才能获得我的帖子?

谢谢你

我一直在尝试用 axios 做到这一点,但没有得到任何结果,我也尝试用 Apollo 做到这一点,但我也没有得到结果

javascript reactjs content-management-system graphcms hygraph
1个回答
0
投票

我发现问题了。 我做了console.log(result),我看到403错误“不允许”,所以我为所有模型创建了新的权限,并且我删除了http请求标头

Authorization: 
Bearer ${apiToken}
,
现在可以了

© www.soinside.com 2019 - 2024. All rights reserved.