wmui / essay-server

Essay server API

Home Page:https://api.86886.wang/v1/articles

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Essay server

Essay server API 服务

运行

启动数据库

首先安装MongoDB数据库和Node.js环境,然后启动数据库

# yourDBpath 表示你自定义的数据库目录,任意位置皆可
$ sudo mongod --dbpath yourDBpath

运行项目

$ git clone https://github.com/wmui/essay-server.git

$ cd essay-server

$ npm install

$ npm run dev # 浏览器访问 http://127.0.0.1:3010

配置说明

配置文件在server/config目录下

管理员默认用户名:q,默认密码:q

module.exports = {
  // 初始化管理员信息
  user: {
    role: 'superAdmin',
    username: 'q',
    password: 'q',
    nickname: 'Essay',
    email: 'qq22337383@gmail.com',
    motto: 'Never too old to learn',
  },
  // jwt 配置
  jwt: {
    secret: 'essay',
    expiresIn: 1296000,
  },
  mongodb: {
    host: '127.0.0.1',
    database: 'essay-dev',
    port: 27017,
    username: '',
    password: '',
  },
  // GitHub登录
  githubConfig: {
    githubClient: '9588f02db3f89d176f36',
    githubSecret: '10f4f1daa81764664fafb2e50be2c6985ef139f8',
    scope: 'user',
  },
  // SMTP配置
  emailConfig: {
    user: '',
    pass: '',
  },
  // 前端域名
  domain: 'http://127.0.0.1:3000',
}

接口文档

baseUrl: http://127.0.0.1:3010/v1

若无特殊说明,所有POST、PATCH、DELETE请求均需要Token或Cookie认证信息

文章

Method URL 参数 描述
GET /articles/{limit}/{page} limit: 显示多少条,page: 第几页 获取首页展示的文章列表
GET /article/{id} 文章id 获取文章详情
GET /stick/{limit}/{page} ... 获取置顶文章
GET /drafts/{limit}/{page} ... 获取草稿文章,需要token
GET /search/{keyword}/{limit}/{page} keyword: 搜索关键字 获取搜索列表
GET /tag/{id}/{limit}/{page} id: 标签id 获取标签下的文章列表
POST /article title: 标题,content: 内容,tags:标签id组成的数组(可选) 发布文章
PATCH /article id: 文章的id,title: 标题,content: 内容 修改文章
DELETE /article/{id} id: 文章的id 删除文章

标签

Method URL 参数 描述
GET /tags 获取所有标签
POST /tag name: 标签名 创建一个标签
PATCH /tag id: 原标签id,name: 新标签名字 修改标签
DELETE /tag/{id} id: 标签id 删除一个标签

用户

Method URL 参数 描述
GET /admin 获取管理员信息
GET /user 获取用户信息,需要token
POST /login username: 用户名,password: 密码 管理员登录,后端会返回token并设置cookie
POST /logout 退出登录
PATCH /password oldPassword: 旧密码,newPassword: 新密码 修改管理员密码
PATCH /admin nickname: 昵称,emial: 邮箱,motto: 介绍 修改管理员信息

评论

Method URL 参数 描述
GET /comments 获取所有的评论
POST /comment id: 文章id,content: 评论内容 用户发布评论
DELETE /comment/{id} id: 评论的id 管理员删除评论

OAuth认证

仅支持GitHub

Method URL 参数 描述
GET /oauth/github/{state} state: 文章id GitHub授权

基础服务

Method URL 参数 描述
POST /upload-img 上传图片

服务

Method URL 参数 描述
GET /rss.xml rss订阅服务
GET /sitemap.xml 网站地图,便于搜索引擎收录
GET /robots.txt robot 协议

开源协议

GPL

About

Essay server API

https://api.86886.wang/v1/articles

License:GNU General Public License v3.0


Languages

Language:JavaScript 100.0%