3 Star 3 Fork 3

pyminer / pyminer_extensions_store

Gitee —— 企业级 DevOps 研发管理平台
加入 Gitee
克隆/下载
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md

pyminer_extensions_store

介绍

pyminer的插件商店

插件商店文档

所有接口返回json,所有POST接口接受表单参数(Form Data),Get接口接受url参数(Params)

所有接口,如果错误将返回一个形如

{
    "code":"xxx",
    "detail":"xxx"
}

的结构,如果没有特殊返回值(从服务器获取的信息),成功时会返回

{
    "code":200,
    "detail":"success"
}

PS:已经改造,json中不再出现code,改为http状态码

POST /api/signin

功能:登录

参数:

username:str

password:str

POST /api/signup

功能:注册

参数:

username:str

password:str

Get /api/signout

功能:退出登录

参数:无

Get /api/user_info

功能:获取当前用户信息

参数:无

返回:

{
    "name":"用户名",
    "id":"用户id(int)"
}

Get /api/extensions/all

功能:获取插件列表(所有)

ps:之后增加分页功能吧

参数: page:表示显示第几页 (不填写返回第一页)

返回:

[
    {
        "id":"插件id",
        "name":"插件名称(唯一名称,英文数字下划线)",
        "display_name":"显示名称",
        "author":"作者的用户名",
        "price":"插件价格(现在全0)"
    }
    ...
]

Get /api/extensions/my

功能:获取所有我购买的插件

ps:之后增加分页功能

参数:无

返回:

[
    {
        "id":"插件id",
        "name":"插件名称(唯一名称,英文数字下划线)",
        "display_name":"显示名称",
        "author":"作者的用户名"
    }
    ...
]

Get /api/extensions/id

功能:获取插件信息

PS:考虑之后增加description,url等

参数​ :

id:插件id

返回:

{
    "id":"插件id",
    "name":"插件名称(唯一名称,英文数字下划线)",
    "display_name":"显示名称",
    "author":"作者的用户名",
    "price":"插件价格(现在全0)"
}

POST /api/extensions/

注意最后的/

功能:新建插件(目前插件里面包含多个插件文件,因为一个插件可能有多个版本,多个平台)

参数:

name:插件名称

display_name:插件显示名称

price:插件价格(目前你给多少都自动设成0)

返回

  • 成功时:标准成功返回

  • 未登录:code=403,detail=no sign in

  • 当名称不唯一:code=409,detail="name must be unique"

  • 当缺少参数:code=400,detail="args wrong …"

POST /api/upload

功能:为指定的插件上传一个新版本

参数:

extension_id:插件id

version:插件版本

file:上传的文件

返回:

  • 缺少参数:code=400,detail=params wrong
  • 未登录:code=403,detail=no sign in
  • 插件id错误:code=400,detail=extension_id_wrong
  • 成功:标准成功返回

POST /api/buy

功能:购买插件(目前价格全0

参数:

extension_id:插件id

返回:

- 未登录:code=403,detail=no sign in
- 缺少参数:code=400,detail=params error
- 扩展id不正确:code=400,detail=extension_id error
- 钱不够:code=403,detail=don"t have enough money
- 成功:标准成功返回

GET /api/download

功能:下载插件文件

如果插件的价格为0,未登录未购买也可下载(现在的情况)

参数:

id:下载的FileId 注意不是扩展的ID,是文件的ID,这是两套不同的ID

返回:

  • 没有这个文件:code=404,detail=no file
  • 没有购买或登录:code=403,detail=not sign or not buy

GET /api/extensions_version

功能:获取插件版本列表

参数:

id:插件id 使用查询参数传递

返回:

失败

{
    "code": 403,
    "detail": "query fail! please check param! "
}

成功 {"版本":"文件id"}

[
    {"v.1" : "1"},
    {"v.2" : "2"}
    
]

快速搭建开发环境

方法一:

  • 拉取仓库到本地并进入仓库

  • 构建镜像docker build -t extension_image .

  • 运行镜像

docker run
-p 8000:8000
--name extension_container
extension_image:latest 
  • 打开浏览器输入http://0.0.0.0:8000/signin, 出现{"detail": "param error"}表示成功

后序在本地编辑代码,在容器中运行查看结果即可。

方法二:

  • 配置Python3.8
  • 使用requirements.txt安装依赖

点评 ( 0 )

你可以在登录后,发表评论

简介

pyminer的插件商店 展开 收起
Python 等 2 种语言
GPL-3.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Python
1
https://gitee.com/py2cn/pyminer_extensions_store.git
git@gitee.com:py2cn/pyminer_extensions_store.git
py2cn
pyminer_extensions_store
pyminer_extensions_store
dev

搜索帮助

122604 9befe709 551147 122411 94cd1624 551147