SOP 2.3.0 发布,开放平台解决方案项目
SOP 2.3.0 发布,本次更新内容如下:
- 支持请求restful接口(设置
sop.restful.enable=true
) doc
默认情况下 SOP 只提供开放接口,也可以同时提供 restful 接口,即程序提供一部分的开放接口,同时提供一部分 restful 接口。
默认情况下提供 restful 功能是关闭的,开启方式如下:
- 打开 sop-gateway 配置文件,新增一行配置:
# 提供restful接口 sop.restful.enable=true
现在开放接口和restful接口可以共存了
@RestController @RequestMapping("food") public class TraditionalWebappController { // restful接口,可直接调用 @RequestMapping(value = "getFoodById", method = RequestMethod.GET) public Food getFoodById(Integer id) { Food food = new Food(); food.setId(id); food.setName("香蕉"); food.setPrice(new BigDecimal(20.00)); return food; } // 开放接口,需要通过签名验证才能调用 @ApiMapping(value = "story.get", version = "1.1") public StoryResult getStory() { StoryResult result = new StoryResult(); result.setId(1L); result.setName("海底小纵队1.1"); return result; } }
这是一个食品服务
例子,假设网关ip为10.0.1.11,端口8081;食品服务ip为10.0.1.22,端口2222
-
网关访问:
http://10.0.1.11:8081/rest/food/getFoodById?id=2
-
本地访问:
http://10.0.1.22:2222/food/getFoodById/?id=2
更多请参考开发文档
关于 SOP
SOP(Simple Open Platform)
一个开放平台解决方案项目,基于Spring Cloud实现,目标是能够让用户快速得搭建起自己的开放平台。
SOP提供了两种接口调用方式,分别是:支付宝开放平台的调用方式和淘宝开放平台的调用方式。 通过简单的配置后,你的项目就具备了和支付宝开放平台的一样的接口提供能力。
SOP封装了开放平台大部分功能包括:签名验证、统一异常处理、统一返回内容 、业务参数验证(JSR-303)、秘钥管理等,未来还会实现更多功能。
项目特点
- 接入方式简单,与老项目不冲突,老项目注册到注册中心,然后在方法上加上注解即可。
- 架构松耦合,业务代码实现在各自微服务上,SOP不参与业务实现,这也是Spring Cloud微服务体系带来的好处。
- 扩展简单,开放平台对应的功能各自独立,可以自定义实现自己的需求,如:更改参数,更改签名规则等。
谁可以使用这个项目
- 有现成的项目,想改造成开放平台供他人调用
- 有现成的项目,想暴露其中几个接口并通过开放平台供他人调用
- 想搭一个开放平台新项目,并结合微服务的方式去维护
- 对开放平台感兴趣的朋友
以上情况都可以考虑使用SOP
架构图
已完成列表
- 签名验证
- 统一异常处理
- 统一返回内容
- session管理
- 秘钥管理
- 微服务端自动验证(JSR-303)
- 支持Spring Cloud Gateway
- Admin管理平台,统一管理微服务配置,管理路由管理,微服务上下线
- 接入方管理+秘钥管理
- 接口权限分配
- 文件上传/下载
- SDK
- 接口限流
- 文档整合
- 应用授权
- 监控日志
- 支持nacos
- 网关动态修改参数
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Ionic 4.10.1 发布,混合移动应用前端框架
Ionic 4.10.1 发布了。Ionic是一个高级的 HTML5 移动端应用框架,也是一个开发混合移动应用的前端框架。 此版本更新内容如下: Bug Fixes animation:动画计时器回退现在会考虑到迭代 (#19527) (9f5ed23) css:更新弃用,删除wrap(#19535) (bfb704e), closes#19499 header:修复与 split pane 一起使用时折叠的 iOS 标头 (#19480) (dea1c26), closes#19541 list:为插图列表中的第一项添加底边框 (#19525) (71b8853), closes#19507 md:修复在某些 Android 设备上以 MD 模式导航时的闪烁(#19553) (19ee21a), closes#19491 searchbar:更新填充和按钮对齐 (#19532) (77658e6), closes#19502 更新说明及下载地址
- 下一篇
GuiLite 2.9 发布:单片机 + 3D
新功能 原本以为3D的故事已经结束了,但是开发群“王多余”同学的一个视频,让我们意识到单片机上依然有实现3D效果的可能,从视频上看出:少许的3D特效对用户体验有非常直观的提升(例如:开机动画,进度条,指示信息等)。当然这些效果不是单片机独有,其他嵌入式linux平台,或windows平台也可以获利;毕竟能以最小的资源代价得到3D效果,并没有坏处。 为此,我们特别开发了一个3D引擎(Hello3D),因为该引擎仅仅引用到了GuiLite底层渲染,并不需要对GuiLite作特别修改,因此该引擎作为GuiLite的一个实例,放在GuiLiteSamples代码库里面;目前已经适配的工程有:STM32F103、STM32F4xx、Windows、Linux、Qt;有兴趣的同学可以下载运行一下。 该引擎的主要优势和特点如下: 能够方便的构建3D模型,以上效果仅仅需要1百行代码(包括:引擎和demo实例) 能够在单片机下面运行,实验的硬件是:stm32f103(16k ram) 能够支持linux,windows,qt -- 由于GuiLite的高度可移植性,做到这一点并不难 可以根据readme...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启