原文:https://cnodejs.org/api
update 2019-03-21: 涉及發帖和發評論的接口都已經下線了,太多人為了測試客戶端亂發帖了。
主題
get /topics 主題首頁
接收 get 參數
- page
Number
頁數 - tab
String
主題分類。目前有ask
share
job
good
- limit
Number
每一頁的主題數量 - mdrender
String
當為false
時,不渲染。默認為true
,渲染出現的所有 markdown 格式文本。
get /topic/:id 主題詳情
接收 get 參數
- mdrender
String
當為false
時,不渲染。默認為true
,渲染出現的所有 markdown 格式文本。 - accesstoken
String
當需要知道一個主題是否被特定用戶收藏以及對應評論是否被特定用戶點贊時,才需要帶此參數。會影響返回值中的is_collect
以及replies
列表中的is_uped
值。
示例:/api/v1/topic/5433d5e4e737cbe96dcef312
主題收藏
post /topic_collect/collect 收藏主題
接收 post 參數
- accesstoken
String
用戶的 accessToken - topic_id
String
主題的id
返回值示例
{"success": true}
post /topic_collect/de_collect 取消主題
接收 post 參數
- accesstoken
String
用戶的 accessToken - topic_id
String
主題的id
返回值示例
{success: true}
get /topic_collect/:loginname 用戶所收藏的主題
示例:/api/v1/topic_collect/alsotang
用戶
get /user/:loginname 用戶詳情
post /accesstoken 驗證 accessToken 的正確性
接收 post 參數
- accesstoken
String
用戶的 accessToken
如果成功匹配上用戶,返回成功信息。否則 403。
返回值示例
{success: true, loginname: req.user.loginname, id: req.user.id, avatar_url: req.user.avatar_url}
消息通知
get /message/count 獲取未讀消息數
接收 get 參數
- accesstoken
String
返回值示例
{ data: 3 }
get /messages 獲取已讀和未讀消息
接收 get 參數
- accesstoken
String
- mdrender
String
當為false
時,不渲染。默認為true
,渲染出現的所有 markdown 格式文本。
返回值示例
{ data: { has_read_messages: [], hasnot_read_messages: [ { id: "543fb7abae523bbc80412b26", type: "at", has_read: false, author: { loginname: "alsotang", avatar_url: "https://avatars.githubusercontent.com/u/1147375?v=2" }, topic: { id: "542d6ecb9ecb3db94b2b3d0f", title: "adfadfadfasdf", last_reply_at: "2014-10-18T07:47:22.563Z" }, reply: { id: "543fb7abae523bbc80412b24", content: "[@alsotang](/user/alsotang) 哈哈", ups: [ ], create_at: "2014-10-16T12:18:51.566Z" } }, ... ] } }
post /message/mark_all 標記全部已讀
接收 post 參數
- accesstoken
String
返回值示例
{ success: true, marked_msgs: [ { id: '544ce385aeaeb5931556c6f9' } ] }
post /message/mark_one/:msg_id 標記單個消息為已讀
請求示例:/message/mark_one/58ec7d39da8344a81eee0c14
接收 post 參數
- accesstoken
String
返回值示例
{ success: true, marked_msg_id: "58ec7d39da8344a81eee0c14" }
知識點
- 如何獲取 accessToken? 用戶登錄后,在設置頁面可以看到自己的 accessToken。 建議各移動端應用使用手機掃碼的形式登錄,驗證使用
/accesstoken
接口,登錄后長期保存 accessToken。