Git Product home page Git Product logo

lsys's Introduction

rust实现的面向内部应用的应用管理中心实现

适用场景:

  1. 当你使用rust开发web应用时,使用本项目二次开发可以减少重复工作量。
  2. 当你需要一个包含oauth的轻量级开放平台服务时,可基于本项目快速实现鉴权,应用管理等.
  3. 当进行分模块独立开发(如:公司内分团队的各自独立开发)时,可用本项目作为一个内部应用管理中心。
  4. 当你希望把一些常用服务(如:发送短信,邮件 等)抽离出来公用时,可用本项目实现.

在线示例: https://lsys.cc/ [账号:aaaaa 密码:000000]

  1. 编译 【中途有失败再次执行】
cd server && cargo build -r && cd ..
  1. 导入SQL到数据库
导入 ./server/assets/tables.sql 到MYSQL
  1. 修改你的监听端口,REDIS,MYSQL等

[./server/examples/lsys-actix-web/.env 会覆盖./server/examples/lsys-actix-web/config/]

./server/examples/lsys-actix-web/.env 
  1. 执行 启动服务
cd ./server/examples/lsys-actix-web/ && ../../target/release/lsys-actix-web
管理UI 安装
  1. 修改配置,设置服务地址跟jwt的token等
./ui/web/config.json
./ui/wap/config.json
  1. 编译
cd ./ui/web && npm i && npm run build && cd ../..
cd ./ui/wap && npm i && npm run build && cd ../..
cd ..
  1. 访问 http://127.0.0.1/ui/

二次开发参考时序:

基于rust二次开发

基于rust二次开发示例

sequenceDiagram
    par 管理ui实现
    前端->>lsys服务: 前端请求到 lsys-actix-web[actix-web] 服务
    lsys服务-->>前端: 返回结果
    end
    par 自行开发RUST内部应用实现
    前端->>lsys服务: 前端请求到 lsys-actix-web[actix-web] 服务
    lsys服务->>内部rust实现: 由 actix-web 进行接入,可换其他支持tokio运行时框架
    内部rust实现->>内部rust实现: 实现你的业务逻辑,示例应用[lsys-web-subapp-dome]
    内部rust实现-->>lsys服务: 可以库调用访问lsys服务[lsys-rbac,lsys-user等]
    lsys服务-->>前端: 返回结果
    end
Loading
基于HTTP接口方式二次开发

通过HTTP接口接入文档

sequenceDiagram
    par 普通应用实现[接入层处理业务逻辑]
    前端->>外部应用接入层: 自行选择语言,实现方式等
    外部应用接入层->>lsys服务: 通过以上协议 访问lsys提供的服务来实现部分你需要的功能
    lsys服务-->>外部应用接入层: 处理结果返回到外部应用
    外部应用接入层-->>前端: 返回结果
    end
    par 拆分接入层跟服务层的实现[服务层处理业务逻辑]
    前端->>外部应用接入层: 自行选择语言,实现方式等
    外部应用接入层->>外部应用服务层:自行选择语言,内部访问协议等,最好接入层 APPID 并传入
    外部应用服务层->>lsys服务: 根据接入层传入的APPID,查询对应的APP信息
    lsys服务-->>外部应用服务层: 可根据查询到的 APP信息 
    外部应用服务层->>外部应用服务层: 根据查询app信息及接入层传入APPID及其他参数 进行签名校验
    外部应用服务层->>外部应用服务层: 校验请求通过后,继续完成内部服务层业务逻辑
    外部应用服务层-->>外部应用接入层: 自行实现协议返回数据到接入层
    外部应用接入层-->>前端: 返回结果
    end
Loading

lsys's People

Contributors

shanliu avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.