post.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /**
  2. * 文章接口
  3. * @see https://api.halo.run/content-api.html#tag/post-controller
  4. */
  5. import HttpHandler from '@/common/http/request.js'
  6. export default {
  7. /**
  8. * 获取文章列表
  9. * @param {Object} params 参数
  10. */
  11. getPostList: (params) => {
  12. return HttpHandler.Get(`/api/content/posts`, params)
  13. },
  14. /**
  15. * 评论文章
  16. * @param {Object} data 数据
  17. * {
  18. * "allowNotification": true,
  19. * "author": "string",
  20. * "authorUrl": "string",
  21. * "content": "string",
  22. * "email": "string",
  23. * "parentId": 0,
  24. * "postId": 0
  25. * }
  26. */
  27. postCommentPost: (data) => {
  28. return HttpHandler.Post(`/api/content/posts/comments`, data)
  29. },
  30. /**
  31. * 搜索文章
  32. * @param {Object} data 数据
  33. */
  34. getPostListByKeyword: (data) => {
  35. return HttpHandler.Post(`/api/content/posts/search`, data)
  36. },
  37. /**
  38. * 根据分类获取文章
  39. * @param {Object} params 参数
  40. */
  41. getPostDetailBySlug: (params) => {
  42. return HttpHandler.Get(`/api/content/posts/slug`, params)
  43. },
  44. /**
  45. * 根据文章id获取文章
  46. * @param {Object} params 参数
  47. */
  48. getPostDetailByPostId: (postId, params) => {
  49. return HttpHandler.Get(`/api/content/posts/${postId}`, params)
  50. },
  51. /**
  52. * 给文章点赞
  53. * @param {Object} postId 文章id
  54. */
  55. postLikePost: (postId) => {
  56. return HttpHandler.Post(`/api/content/posts/${postId}/likes`)
  57. },
  58. /**
  59. * 根据当前文章id获取前一篇文章
  60. * @param {Object} postId 文章id
  61. */
  62. getPrevByCurrentPostId: (postId) => {
  63. return HttpHandler.Get(`/api/content/posts/${postId}/prev`)
  64. },
  65. /**
  66. * 根据当前文章id获取下一篇文章
  67. * @param {Object} postId 文章id
  68. */
  69. getNextByCurrentPostId: (postId) => {
  70. return HttpHandler.Get(`/api/content/posts/${postId}/next`)
  71. },
  72. }