Scriptable 的概念小部件
Notion widget by Scriptable
我尝试使用 Notion API
创建 Scriptable
小部件。
我需要获取数据库中的页数。
所以,我使用了 guide to create token and share DB, and by this guide 我创建了 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
}
此代码出现错误:“资源超出最大大小”。
知道如何调试这个错误吗?
在Slack社区的帮助下,我们找到了答案,在iOS13上,不允许在GET请求中添加body。为了让它再次工作,我们可以切换到 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`,
我尝试使用 Notion API
创建 Scriptable
小部件。
我需要获取数据库中的页数。
所以,我使用了 guide to create token and share DB, and by this guide 我创建了 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
}
此代码出现错误:“资源超出最大大小”。 知道如何调试这个错误吗?
在Slack社区的帮助下,我们找到了答案,在iOS13上,不允许在GET请求中添加body。为了让它再次工作,我们可以切换到 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`,