-1

我不明白为什么一个简单的 fetch 请求通过 Vanilla JS 不成功,但通过 Postman 成功:

失眠症

const getNotion = () => {
  fetch(
    "https://api.notion.com/v1/databases/[DBID_HERE]",
    {
      method: "GET",
      headers: {
        "Authorization": "Bearer [SECRET_HERE]",
        "Notion-Version": "2021-05-11"
      }
    }
  )
    .then((response) => response.json())
    .then((json) => {
      console.log(json);
    })
    .catch((err) => console.log("Request Failed", err));
};

getNotion();

响应是Request Failed TypeError: Failed to fetch。DBID 和 SECRET 都是正确的。

4

1 回答 1

0

Notion API 不支持 CORS(如果您愿意,可以了解更多相关信息)。而且,如果您希望您的网站上线,您真的不应该从您的网站调用 API,因为它会公开您的凭据。所以对于不想花太多时间在 BE 上的我来说,最简单的解决方案是使用无服务器功能。

于 2021-08-14T17:30:02.440 回答