Giter Club home page Giter Club logo

yukeseko-interface's Introduction

API开放平台后端

项目上线地址:http://122.9.148.119/ 由于服务器内存限制,实际调用接口的服务功能无法启动(即api-interface服务),且其他服务可能出宕机,如果所有接口都无法发送请求且报错500,是网关nacos挂掉了,请晚点再试。 (第三方登录可能会出现502问题,或者无法成功登录,该情况为nacos挂掉了,可以刷新页面尝试能否登录,如果不能,建议使用账号密码进行登录)

1、介绍

个人API开放平台是基于 @鱼皮 的《API开放平台》的基础上继续开发的一个分布式项目,仅用于个人学习使用

2、软件架构

软件架构说明:

  • 1、新增技术或插件:
    • Tencent Cloud Api
    • Rabbit Mq
    • Sentinel
    • Feign
    • Spring Security
  • 2、基于 @鱼皮 的《API开放平台》项目,新增或重构功能如下:
    • 1、新增用户登录后返回token、以及token拦截器
    • 2、重构用户表:将ak、sk单独放在表Auth中,且用户表中新增手机号mobile字段
    • 3、新增用户通过手机号、发送手机验证码方式进行登录,使用令牌桶算法对发送短信接口进行限制
    • 4、新增用户注册、忘记密码功能和页面,重构用户注册功能(需要使用手机号进行验证)。
    • 5、新增在网关层中使用Sentinel来实现限流、降级等操作。
    • 6、修改SDK请求基本路径,interface服务使用基本请求路径中携带的headers,通过反射技术实现只通过一个基本路基动态调用API接口。
    • 7、新增框架Spring Security 框架的使用(具有两种鉴权模式,可以选择使用Spring Security,也可以使用拦截器来实现)
    • 8、新增Rabbit Mq 的使用,主要涉及到消息可靠性保证等功能实现(主要用于订单流程)
    • 9、新增Feign来实现远程调用
    • 10、新增接口购买功能(通过支付宝沙箱功能来实现付款功能)
    • 11、新增第三方登录功能(Gitee、GitHub),微信公众号登录需要备案等其他原因,不再实现
    • 12、新增分布式锁的使用

项目模块介绍

  1. api-front :为项目前端,前端项目启动具体看readme.md文档
  2. api-common :为公共封装类(如公共返回对象、)
  3. api :为项目主体,主要包括用户相关、接口相关等功能
  4. api-gateway :为网关服务,涉及到限流、统一鉴权
  5. api-order :为订单服务,主要涉及到接口的购买等
  6. api-third-party:为第三方服务,主要涉及到发送短信、第三方登录、支付宝沙箱支付功能
  7. api-interface:为接口服务,主要用于实现接口调用的功能
  8. api-sdk:为生成的SDK源码
  9. api-config:为nacos的配置文件

支付宝沙箱环境账号密码:(该环境下,周日到周一是维护时间,不能使用该功能)

买家账号[email protected]

登录密码111111

支付密码111111

写在最后

这个花了孩子挺久时间的,前后端都是自己写的,之前没有学过react,这次跟着文档来写,前端还是花了一定时间

有些地方可能还存在bug,目前我自己测试了几次都没问题,如果有问题,欢迎大家在 Issuse 中提出或者 评论区 留言

yukeseko-interface's People

Contributors

yukeseko 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.