使用strapi搭建api接口
Contents
由于小组项目需要搭建api接口,实现数据库的查询功能,在网上搜索了一下准备使用比较容易上手的strapi(gin不好意思你看起来有点难)来搭建,先在本机上调试最后部署到服务器。
1.安装nodejs和yarn
manjora
|
|
ubuntu
|
|
2.创建项目
由于需要批量导入文件,所以需要安装插件
根据 https://github.com/strapi/strapi-tutorials/tree/master/tutorials/import-content-plugin-tutorial
教程来下载并安装
首先用 https://minhaskamal.github.io/DownGit/ 来下载这个github目录到服务器上,解压
|
|
访问 http://localhost:1337/admin 即可在网页上进行编辑
注意使用的默认数据库为sqlite,development环境下数据库文件在tmp/
目录下,使用admin看板只能添加表,删除表需要删除api/
目录下的同名文件夹
3.导入数据并创建api接口
在面板上进行操作
- 创建content-type,跟创建表格类似,制定字段以及类型
- 使用在线网站https://json-csv.com/将json转换成csv(值得注意的是它会将列表进行拆分)
- 使用插件导入数据,导入到指定的content-type中,注意字段的对应
- 设置数据的public权限
选择侧栏的Roles & Permissions, 选择public的数据权限,我只开放了数据的部分权限(count为计数,find为返回所有,findone为返回单个)
之后再访问http://localhost:1337/quizzes
就可以看到请求的数据了
其它的功能以及参数说明可以参考如下:
https://strapi.io/documentation/3.0.0-beta.x/content-api/parameters.html
项目需求是随机获取10条数据,但此api没有打乱数据的功能,因此在使用中可以先获取所有题库,再随机选取10个,或者使用javascript生成10个1-52的随机数(数据总数为52),然后获得请求10次获得数据