获取话题列表

  • 接口说明: 获取话题列表
  • 接口地址: /api/topics
  • 请求方式: GET

请求参数

参数名称类型是否必须描述
includestring关联数据
filter[content]string话题内容(模糊查询)
filter[username]string话题作者
filter[recommended]int是否推荐(0未推荐,1推荐)
filter[createdAtBegin]datetime话题创建时间范围-开始
filter[createdAtEnd]datetime话题创建时间范围-截止
filter[threadCountBegin]int话题主题数范围-起始
filter[threadCountEnd]int话题主题数范围-截止
filter[viewCountBegin]int话题热度范围-起始
filter[viewCountEnd]int话题热度范围-截止
page[number]int页码
page[limit]int单页数量
sortstring默认按照创建时间倒序,可选值:主题量threadCount、浏览量viewCount、创建时间createdAt、是否推荐recommended、推荐时间recommended_at。添加标记‘-’为倒序,如:‘-threadCount’;

include 可关联的数据

关联名称模型类型是否默认描述
userusersobject话题创建人
lastThreadthreadsobject最新主题
lastThread.firstPostpostsobject最新主题的首帖
lastThread.firstPost.imagesattachmentsobject最新主题首帖的图片

请求示例

  1. /api/topics?filter[content]=1&include=user&page[number]=1&page[limit]=10&sort=-viewCount

返回说明

  • 成功,http 状态码: 200
  • 失败,http 状态码: 404

返回结果

关联数据模型字段释义参见请参见相应文档

字段名变量名类型描述
linksobjectobject接口链接
data.attributesobjectobject数据属性
自增 idattribute.idstring自增 id
创建人attribute.user_idint创建人 user_id
是否推荐attribute.recommendedint是否推荐
话题内容attribute.contentstring话题内容
更新时间attributes.updated_atdatetime更新时间
创建时间attributes.created_atdatetime创建时间
data.relationshipsobjectobject关联关系
includedobjectobject关联数据

返回示例

  1. {
  2. "links": {
  3. "first": "DummySiteUrl/api/topics?filter%5Bcontent%5D=1&include=user&page%5Blimit%5D=10",
  4. "last": "DummySiteUrl/api/topics?filter%5Bcontent%5D=1&include=user&page%5Blimit%5D=10"
  5. },
  6. "data": [
  7. {
  8. "type": "topics",
  9. "id": "1",
  10. "attributes": {
  11. "id": 1,
  12. "user_id": 3,
  13. "content": "话题1",
  14. "recommended": 1,
  15. "updated_at": "2020-04-24T14:44:05+08:00",
  16. "created_at": "2020-04-24T14:44:07+08:00"
  17. },
  18. "relationships": {
  19. "user": {
  20. "data": {
  21. "type": "users",
  22. "id": "3"
  23. }
  24. }
  25. }
  26. }
  27. ],
  28. "included": [
  29. {
  30. "type": "users",
  31. "id": "3",
  32. "attributes": {
  33. "id": 3,
  34. "username": "user",
  35. "avatarUrl": "",
  36. "isReal": false,
  37. "threadCount": 18,
  38. "followCount": 1,
  39. "fansCount": 0,
  40. "likedCount": 2,
  41. "signature": "",
  42. "usernameBout": 0,
  43. "follow": 0,
  44. "status": 0,
  45. "loginAt": "2020-04-23T17:06:18+08:00",
  46. "joinedAt": "2020-03-09T16:39:28+08:00",
  47. "expiredAt": null,
  48. "createdAt": "2020-03-09T16:39:28+08:00",
  49. "updatedAt": "2020-04-23T18:02:36+08:00",
  50. "canEdit": false,
  51. "canDelete": false,
  52. "showGroups": true,
  53. "registerReason": "",
  54. "banReason": ""
  55. }
  56. }
  57. ],
  58. "meta": {
  59. "total": 1,
  60. "pageCount": 1
  61. }
  62. }