我的第一个Matters API 实验
读到 @catding 的《Matters儀表板發佈,每日自動更新》才知道Matters 有 API 可以采集后台数据,忍不住想玩一玩。站内找到 @robertu 的《社區開放一小步:Matters API》,API 使用指导。从来没用过 GraphQL,完全照猫画虎,在 https://server.matters.news/playground 上作了第一个实验。
送了4个queries:
1. 找一篇文章:《社區開放一小步:Matters API》
2. 找一个用户名: flyingfish0
3. 找标题里含有“电影”关键词的文章
4. 找文章《亚历山大图书馆和希帕提婭之死》之后发表的热门文章
API 查詢:
query { article( input: { mediaHash: "zdpuAyovU8xL9sYsV5rQfe35XhmN6okTVbnogCFH2J8cqAXCs" } ) { id author { displayName } title summary } user( input: { userName: "flyingfish0"} ) { displayName info { description } } search( input: { type: Article, key : "电影" } ) { totalCount edges { cursor } } viewer { recommendation { hottest ( input: { after: "亚历山大图书馆和希帕提婭之死" } ) { totalCount edges { cursor } pageInfo { startCursor endCursor hasNextPage hasPreviousPage } } } } }
API 返回的數據:
{ "data": { "article": { "id": "QXJ0aWNsZToxMTUzNg", "author": { "displayName": "robertu" }, "title": "社區開放一小步:Matters API", "summary": "三月網站改版時,我們對技術架構進行了調整,其中前後端通信的 API 從 REST 改為 GraphQL。在經過幾個月的產品迭代、開放註冊帶來的流量攀升考驗後, Matters API 正式對社區開放!為什麼選擇 GraphQL?雖然 GraphQL 與 REST 都能透過 HTT..." }, "user": { "displayName": "北小魚", "info": { "description": "写字是很个人的事情,必须随心所欲" } }, "search": { "totalCount": 20, "edges": [ { "cursor": "YXJyYXljb25uZWN0aW9uOjA" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjI" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjM" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjQ" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjU" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjY" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjc" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjk" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjEw" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjEx" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjEy" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjEz" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE0" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE1" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE2" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE3" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE4" }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE5" } ] }, "viewer": { "recommendation": { "hottest": { "totalCount": 130036, "edges": [ { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" }, { "cursor": "YXJyYXljb25uZWN0aW9uOk5hTg" } ], "pageInfo": { "startCursor": "YXJyYXljb25uZWN0aW9uOk5hTg", "endCursor": "YXJyYXljb25uZWN0aW9uOk5hTg", "hasNextPage": false, "hasPreviousPage": false } } } } } }
数据显示:
1. 文章找到
2. 用户找到
3. 找到20篇标题含有“电影”的文章,“cursor”是什么?怎么才能从“cursor”找到文章?
4. 这个数据有问题,总数有130036,不可能啊!“cursor”也不对,全都一样。
有高手指点一下吗?