- 博客(16)
- 资源 (40)
- 收藏
- 关注
原创 (十三)app_key和secret存放在数据库或redis中
这里以redis为例新建一个RedisAppSecretManager类实现AppSecretManager接口/** * 使用方式: * * <pre>@Autowiredprivate AppSecretManager appSecretManager;@Overrideprotected void initApiConfig(ApiConfig apiC...
2018-04-26 11:03:36 2192
原创 (十二)自定义session管理
easyopen1.4.0开始支持自定义session管理。创建session登陆成功后创建session,并返回sessionId// 自定义session @PostMapping("managedSessionLogin") public String managedSessionLogin(HttpServletRequest request) { ...
2018-04-26 11:02:36 1739
原创 (十一)拦截器
easyopen在1.3.1版本开始支持拦截器。easyopen拦截器实现原理跟springmvc拦截器类似,拦截器作用在api方法上,即有@Api注解的方法。拦截器定义如下:/** * 拦截器,原理同springmvc拦截器 * @author tanghc * */public interface ApiInterceptor { /** * 预处理回调...
2018-04-26 11:01:18 306
原创 (十)使用oauth2
如果第三方应用和本开放平台对接时需要获取用户隐私数据(如商品、订单),为为了安全与隐私,第三方应用需要取得用户的授权,即获取访问用户数据的授权令牌 AccessToken 。这种情况下,第三方应用需要引导用户完成帐号“登录授权”的流程。easyopen从1.2.0版本开始支持oauth2认证。接入方式很简单:新建一个Oauth2ManagerImpl类,实现Oauth2Manager接口...
2018-04-26 11:00:23 1541
原创 (九)生成文档页面
easyopen提供一个简单的api文档查看页面,类似于swagger,基于注解功能来生成文档页面。生成的文档页面可以查看参数、结果说明,也可以进行模拟请求。对于前后端分离的项目来说会很有帮助。文档界面如下图所示:左边的树形菜单对应文档名称,点击树可前往查看对应的接口说明。点击请求按钮可以发起请求进行测试。可修改业务参数中的值进行测试。下面来讲解文档注解的使用方法。文档页面默认是关...
2018-04-26 10:58:23 574
原创 (八)接口交互详解
本篇介绍一个接口请求的完整交互过程。请求参数easyopen定义了7个固定的参数,用json接收{ "name":"goods.get", "version":"2.0", "app_key":"test", "data":"%7B%22goods_name%22%3A%22iphone6%22%7D&quo
2018-04-26 10:41:08 4905
原创 (六)自定义结果返回
本篇介绍如何改变JSON输出策略以及改变返回结果字段名改变json输出策略默认使用阿里的fastjson进行json输出JSON.toJSONString(obj)如果要更换输出策略,操作方式如下:@Overrideprotected void initApiConfig(ApiConfig apiConfig) { ... // 自定义json格...
2018-04-26 10:36:32 872
原创 springboot访问静态文件出错
这个是一个很隐蔽的问题,springboot配置没做改变,突然就无法访问静态文件了,之前一直是好的。由于是团队开发,肯定是有人提交了一段代码导致(配置没变,这部分可以先排除)。仔细排查后发现最近新加了这样一段代码:@RequestMapping(name = "/") @ResponseBody public String slbCheck() { ...
2018-04-24 11:49:10 992
原创 redis ERR unknown command 'EVAL'
redis客户端使用evel命令,报ERR unknown command 'EVAL'解决方式:检查redis版本是否大于等于2.6.0如果版本没问题,打开redis.conf配置文件检查是否有rename-command EVAL ""这项配置如果有,注释掉#rename-command EVAL "",重启redis即可...
2018-04-23 19:41:33 15652 3
原创 (七)自定义序列化
easyopen序列化使用fastjson处理json,xstream处理xml。现在我们来自定义实现一个json处理:新建一个类JsonFormatter,实现ResultSerializer接口public class JsonFormatter implements ResultSerializer { @Override public String seri...
2018-04-23 10:22:03 246
原创 (五)错误处理
easyopen对错误处理已经封装好了,最简单的做法是向上throw即可,在最顶层的Controller会做统一处理。例如:if(StringUtils.isEmpty(param.getGoods_name())) { throw new ApiException("goods_name不能为null");}或者if(StringUtils.isEmpty(param....
2018-04-23 10:15:29 416
原创 (四)业务参数校验
业务参数校验采用JSR-303方式,关于JSR-303介绍可以参考这篇博文:JSR 303 - Bean Validation 介绍及最佳实践在参数中使用注解即可,框架会自动进行验证。如下面一个添加商品接口,它的参数是GoodsParam@Api(name = "goods.add")public void addGoods(GoodsParam param) { ...}...
2018-04-20 22:21:00 955
原创 (三)easyopen快速开始
eclipse下(idea原理一样)下载或clone项目https://gitee.com/durcframework/easyopen.git 下载zipeclipse右键import… -> Exsiting Maven Projects。选择easyopen目录导入到eclipse后会有三个工程,等待相关jar包下载。全部jar下载完毕后,启动easyopen-server...
2018-04-20 21:51:30 1751
原创 (二)springmvc项目整合easyopen
git中的easyopen-server 默认是springboot项目,接下来介绍如何使用springmvc项目来整合easyopen。新建工程eclipse新建一个springmvc工程,工程名为myopen,建好后的工程结构如下:添加依赖打开pom.xml添加easyopen依赖<dependency> <groupId>n...
2018-04-20 21:44:36 1110
原创 (一) easyopen介绍
easyopen一个简单易用的接口开放平台,平台封装了常用的参数校验、结果返回等功能,开发者只需实现业务代码即可。easyopen的功能类似于淘宝开放平台,它的所有接口只提供一个url,通过参数来区分不同业务。这样做的好处是接口url管理方便了,平台管理者只需维护好接口参数即可。由于参数的数量是可知的,这样可以在很大程度上进行封装。封装完后平台开发者只需要写业务代码,其它功能可以通过配置来...
2018-04-20 16:34:44 2894 1
转载 跨域资源共享 CORS 详解
本文转自:http://www.ruanyifeng.com/blog/2016/04/cors.htmlCORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。本文详细介绍CORS的内部机制。(图片说明:摄于阿联酋艾因(Al Ain)的绿洲...
2018-04-19 13:34:01 154
微信打飞机游戏网页版
2014-05-28
ajax异步上传,后台servlet处理源码
2013-11-11
FDUI控件库
2012-11-23
Tomcat与Apache集成笔记
2010-03-10
Tomcat与IIS整合笔记
2010-03-10
企业应用架构模式中文版
2009-01-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人