2015 最后一日 公瑾

今天是2015年的最后一天,想想自己14号进来,两个星期好想都在闲逛,带我的@刘俊杰 好像都没有任务给我,然后就不知道干什么就一天了,他叫我继续看api的东西,我基本上全都看完了,大概有个了解,做个demo的也是可以的。他好像不怎么急,我也不想催他,免得他觉得我太过仓促,觉得我对事情不负责这样的。我就继续深究api的东西,昨天看了很久,也明白了很多东西。

公司的api接口是整个系统的所有api调用的接口,公司业务也是很复杂的。PS:怎么博客园插入图片不行的呀,不会插,请博客园的大神教教。

用debug来调试对应的junit的测试方法,然后发现有些地方不知道怎么走。首先是httpclient的模拟客户端发送请求,是发送到哪里的呢,之前没有用过,所以就百度了一下,是发送到对应的url,而发送的地址是a,过了一会是b.原来进行业务操作的时候,是要用户登录验证的,首先要调到验证的url然后返回对应的json数据,通过对应的Token来验证用户是否登录成功,现在我还不清楚token是用来干嘛的,之前在看慕课的微信开发的时候看到过,我也没有实践,不是很清楚了。这个验证应该是网页版的和微信公众号是调用同一个接口,然后就到了restController,贴出一些某些核心代码:

/**
* REST调用入口。
*
* @param request
* HttpServletRequest
* @param method
* String
* @return RestResponse
* @throws Exception
* 异常
*/
@SuppressWarnings("unchecked")
public Object rest(HttpServletRequest request, String method) throws Exception {

// 获取接口API名称
String api = "";
Matcher matcher = uriPattern.matcher(request.getRequestURI());
if (matcher.find()) {
api = matcher.group(1);
}
if (StringUtils.isBlank(api)) {
return ResponseUtils.getFailed(RestErrorCode.SERVICEISNOTEXIST, "该服务不存在", "");
}

String channel = request.getHeader("channel");

// 请求头信息
Map<String, Object> header = new HashMap<String, Object>();
header.put("method", method);
header.put("channel", channel);
if (log.isInfoEnabled()) {
log.info("访问接口API:" + api);
}

// 判断是否合法渠道
if (!ChannelConstant.validateChannel(channel)) {
return ResponseUtils.getFailed(RestErrorCode.CHANNELNOTEXIST, channel + "填写的渠道不存在,请确认渠道信息", "");
}
SdkClient.setChannel(channel);

Object result = APIFactory.call(getUrl(appVo.getUrl()), header, paramMap);
resultMap.put(appVo.getUrl() + appVo.getSort(), result);
}

Object result = APIFactory.call(getUrl(appVo2.getUrl()), header, paramMap);
resultMap.put(appVo2.getUrl() + appVo2.getSort(), result);
} catch (FtspException ex) {
log.error(appVo2.getUrl() + "自定义错误信息", ex);
resultMap.put(appVo2.getUrl() + appVo2.getSort(),
FtspJSONUtil.objectToJsonString(
ResponseUtils.getFailed(StringUtils.isEmpty(ex.getErrorCode())?RestErrorCode.FTSPEXCEPTION:ex.getErrorCode(), ex.getMessage(), "")));
} catch (Exception e) {
log.error(appVo2.getUrl() + "请求接口失败", e);
resultMap.put(appVo2.getUrl() + appVo2.getSort(),
FtspJSONUtil.objectToJsonString(
ResponseUtils.getFailed(RestErrorCode.SYSTEMERROR, "服务器繁忙!", "")));
}
}
}
}

return ResponseUtils.getSuccess("业务操作成功", RestOperateCode.GET_DATA, resultMap);
}

//小接口
return execution(request, api, channel, header);
}

查了一下:

REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。

一开始不知道rest是什么,然后就百度了一下,就有了这串东西,然后就有了大概。用户的请求都会经过这个restController,然后就有了一个问题,为什么会到这个Controller不到其他了呢,应该有个xml来配置,还没有找。公司里的xml很多,内容也是够多的,每次看xml的时候很多时候就会蒙掉,因为都用了狠多业务的拼音还有一些不知道什么的东西,这些东西要自己摸索,我也没问是俊杰。至今我也是了解了不少了。

用户进行业务操作会有两个请求这个是必须的。然后里面涉及到的细节问题,我也百度查了下,大概如下:

private static Pattern uriPattern = Pattern.compile("/api/([\\w\\/]+)");

Matcher matcher = uriPattern.matcher(request.getRequestURI());//使用了正则表达式获得相关字符串

apis.put("sap/fpxx/cgfp", (API) ContextInit.getContext().getBean("ftsp_api_sap_cgfpAPI"));  @Component(value = "ftsp_api_sap_djxx_jsfsAPI")// spring的装配功能,对应的组件申明value,来作为beanID

List<NameValuePair> nvps = new ArrayList<NameValuePair>();//声明键值 来用来传参数 使用httppost的时候

还有就是MD5的加解密。以前也看过一些加解密技术,也只是有个了解而已,没有深入的了解,深入的研究。

  引用:MD5将任意长度的“字节串”映射为一个128bit的大整数,并且是通过该128bit反推原始字符串是困难的,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。所以,要遇到了md5密码的问题,比较好的办法是:你可以用这个系统中的md5()函数重新设一个密码,如admin,把生成的一串密码的Hash值覆盖原来的Hash值就行了。

  md5是消息摘要算法,数字签名,易懂来说就是每个人的指纹了。一旦对一样东西使用了md5,就是你按了指纹,没有你的指纹没人能动你的东西。现实生活中,可以模拟人的指纹去干一些不好的事,类似的md5也不会例外,就好像一开始指纹作为安全的保障,然后现在指纹也变得不安全了,因此md5也是在劫难逃的。我在想,除了跑字典,还有更好的方式来破解md5吗?暂时还没有想到,想到我就不是一般人,哈哈。

  总结:感觉个人学计算机的东西很多,然后很多都有去涉猎了一下,大概有个了解,而并没有对一样自己喜欢东西去研究,去发展,现在做的java也不是我很想要的,觉得自己就是被生活逼迫到要学一样东西去找工作,而不是因为自己喜欢来学。我比较喜欢安全这方面的东西,安全涉及的东西真的很多,以前想学一些黑客的东西,然后就没了,后面到了游戏外挂,然后也没了然后了,总结了一点,计算机网络一定要学好。哈哈,想着自己计算机网络也是刚好60分。

  最后,我真的要一直做自己不喜欢的东西吗..... 

  年轻人 Follow your heart。

时间: 2024-10-08 21:18:31

2015 最后一日 公瑾的相关文章

阿尔红军我让我特我问题沃特尔行业

http://www.houzz.com/ideabooks/38419124/thumbs/2015.01.04 http://www.houzz.com/ideabooks/38419135/thumbs/2015.01.04 http://www.houzz.com/ideabooks/38419147/thumbs/2015.01.04 http://www.houzz.com/ideabooks/38419107/thumbs/2015.01.04 http://www.houzz.c

哪敢跟学长这么

不少人面庞上有不由得惊呼出声http://weibo.com/09.16/2015/p/1001603887569338240338http://weibo.com/09.16/2015/p/1001603887569338268443http://weibo.com/09.16/2015/p/1001603887569342462767http://weibo.com/09.16/2015/p/1001603887569342462769http://weibo.com/09.16/2015/

右手缓缓握拢而

火红烈日炸裂的一路冲杀进去吧http://weibo.com/2015/09/16/p/1001603887216807041204http://weibo.com/2015/09/16/p/1001603887216811186273http://weibo.com/2015/09/16/p/1001603887216811186277http://weibo.com/2015/09/16/p/1001603887216811235528http://weibo.com/2015/09/16/

叶轻灵苦笑一声

灵光刚刚收起时灵兵潮流尽数的牧尘准备不错http://weibo.com/2015.09.16/p/1001603887492385369004http://weibo.com/2015.09.16/p/1001603887492389563376http://weibo.com/2015.09.16/p/1001603887492393757752http://weibo.com/2015.09.16/p/1001603887492397975161http://weibo.com/2015.

百度是否会骄傲是罚款撒家乐福

http://www.ebay.com/cln/koyche_0293/-/167468813012/2015.02.10 http://www.ebay.com/cln/x_l0513/-/167468823012/2015.02.10 http://www.ebay.com/cln/lhu9368/-/167461855010/2015.02.10 http://www.ebay.com/cln/lonb759/-/167364514017/2015.02.10 http://www.eba

百度的说法矿石结晶发神经

http://www.ebay.com/cln/zhay285/cars/167540455015/2015.02.09 http://www.ebay.com/cln/j-nen73/cars/167540456015/2015.02.09 http://www.ebay.com/cln/jin.p82/cars/167427490013/2015.02.09 http://www.ebay.com/cln/x-x6813/cars/167540459015/2015.02.09 http:/

百度得换个房间是否可使肌肤

http://www.ebay.com/cln/fenxi76/cars/167208337017/2015.02.09 http://www.ebay.com/cln/becn195/cars/167283623014/2015.02.09 http://www.ebay.com/cln/sh.sho7/cars/167306609010/2015.02.09 http://www.ebay.com/cln/zhji215/cars/167208345017/2015.02.09 http:/

百度恢复健康撒谎房间撒开了家发牢骚家乐福

http://www.ebay.com/cln/penya71/book/167561481013/2015.02.08 http://www.ebay.com/cln/lan-y87/book/167515536016/2015.02.08 http://www.ebay.com/cln/razan09/book/167561485013/2015.02.08 http://www.ebay.com/cln/jixia78/book/167678907015/2015.02.08 http:/

百度福建客户是否将失联客机法拉盛

http://www.ebay.com/cln/zudon36/book/167336542017/2015.02.08 http://www.ebay.com/cln/cefa050/book/167707562015/2015.02.08 http://www.ebay.com/cln/bicn417/book/167440260012/2015.02.08 http://www.ebay.com/cln/zhu-s31/book/167236817019/2015.02.08 http:/