0

我尝试Scriptable使用Notion API. 我需要获取数据库内的页数。

因此,我使用指南创建令牌和共享数据库,并通过本指南创建 cURL 请求:

  curl 'https://api.notion.com/v1/databases/%DB_ID%/query' \
  -H 'Authorization: Bearer %TOKEN%' \
  -H 'Notion-Version: 2021-05-13' \
  --data '{
      "filter": 

            {

            }
        }'

body 中的过滤器是必需的,没有这个参数你会得到错误。

所以,卷曲工作正常。


然后我尝试创建可编写脚本的代码:

async function notion_fetchData() {

  const url = 'https://api.notion.com/v1/databases/%DB_ID%/query'
  request = new Request(url)
  request.headers = {'Authorization':Bearer ${todoist_Api_key}, 'Notion-Version': '2021-05-13'}
  request.body = Data.fromString('{"filter": {}}')

  const res_notion = await request.loadJSON()
  console.log(res_notion)
  return res_notion
}

此代码出现错误:“资源超出最大大小”。 任何想法如何调试此错误?

4

1 回答 1

0

在 Slack 社区的帮助下,我们找到了答案,在 iOS13 上,不允许在 GET 请求中添加正文。为了让它再次工作,我们可以切换到 POST/PUT 请求或通过 GET 请求的 url 参数添加正文值。

官方概念js客户端中的代码:

const databasesQuery = {
  //POST instead GET
  method: "post",
  pathParams: ["database_id"],
  queryParams: [],
  bodyParams: ["filter", "sorts", "start_cursor", "page_size"],
  path: (p) => `databases/${p.database_id}/query`,
于 2021-08-04T20:29:53.630 回答