半年没有更新文章了

最近在忙devOps相关的工作。

主要围绕:
1:walle 代码快速部署及回滚系统
2:inception Mysql数据库SQL审核、自动生成回滚SQL、自动执行上线、一键回滚等功能
3:sonar 代码静态分析
4:wrench 业务辅助工具:快速生成配置工具、快速查看实际价格生成原因工具等
5:jenkins 自动化测试、语法检查等

有工具,业务开发效率提高,大家工作更有动力,这些工作就有他的价值。

console.log扩展学习

在玩前端时console.log常常会用到,其实这货还有一堆小伙伴,在用不同浏览器的不同调试工具时有不同的方法可以调用。
如下参考chrome和firebug的方法api

https://developers.google.com/chrome-developer-tools/docs/console-api

http://getfirebug.com/wiki/index.php/Console_API

jsonp就是加载一个javascript文件

jsonp就是加载一个javascript文件

这个文件在服务器端能够动态处理请求

返回的是一个js函数,函数名能够通过请求的地址中callback参数传过去,js函数有一个参数,建议使用json格式

 

这就是jsonp

最快UCenter API使用入门

如果你写了一个WEB程序,你又想与ucenter共用一个用户库,你会怎么做?

来吧,让我告诉你,只要几个简单的步骤就行了。

1、先到ucenter administrator建一个应用,在应用里配置完你的项目的地址,在UC_KEY那里随便输入一些字符串,越长越好。【在这里有配置通讯文件的名称,好象是提示你在api目录下,你可以定义一个,默认是uc.php】。然后你会一直发现应用列表中,该应用一直是通讯失败。

2、生成应用后,在应用详情的最下方有一个textarea框,这个就是系统帮你生成的连接ucenter的配置文件 。

3、在您的项目根目录下建立一个api目录,里面放上刚才说的通讯文件,默认是uc.php

在通讯文件里定义一些常量,可以从uchome、supesite、等里面拷贝出来,其实就是一些返回值 的常量。

加载刚才ucenter administrator所生成的配置文件。

到comsenz的任何一个程序中拷贝一下authcode函数(一般在common.inc.php或者global.inc.php中)

写上简单的判断代码:

$code = $_GET[‘code’];   //取得GET回来的code变量

//经过authcode解码后,转化为一个数组,这个数组里其实就有一些简单的验证信息,如:时间,传递过来的操作等
parse_str(authcode($code, ‘DECODE’, UC_KEY), $get);

//如果当前时间大于传递来的时间1小时,返回超时
if(time() – $get[‘time’] > 3600) {
exit(‘Authracation has expiried’);
}

//如果转换出来的$get变量是空值 ,那肯定是出错了
if(empty($get)) {
exit(‘Invalid Request’);
}

//获取传递过来的操作
$action = $get[‘action’];

//写上一个简单的判断
if ($action == ‘test’){
exit(API_RETURN_SUCCEED);
}

4、写完这样的代码后,去ucenter管理中心看一下应用列表,是不是通讯成功了?

其实那个通讯成功,就是发送了一个 action = test过来。所以当返回1的时候就直接成功了。

不过,由于exit();函数自身的状态,如果参数是字符串,则会直接输出,而如果参数是整数,则仅仅用来表示退出程序,而整数则代表了error code。

If status is an integer, that value will also be used as the exit status. Exit statuses should be in the range 0 to 254, the exit status 255 is reserved by PHP and shall not be used. The status 0 is used to terminate the program successfully.

这时候,你就会发现,你必须得使用exit(“1″);才会真正的输出1。【当然,这是PHP的基础,与通信问题不大,在这里提出来,只是为了防止你明明写了exit(1),却不会输出而在那里拼命调试】

OK,到现在为止,一个简单的通讯就完成了。如果你需要更多的功能,可以参考一下server究竟提供了哪些服务,然后写上针对性的代码和判断就可以了。

本文没图,但我相信,说的应该够明白了吧?

IxEdit傻瓜式JavaScript开发工具(附下载、汉化版、视频教程)

昨天看到了这个工具,今天把视频教程看完了,真的非常简单。链接放这了~

js把字符串类型转换成数字型

<script>
function changeText()
{
var x=document.getElementById(“tid”);
var g = document.getElementById(“g”);
var go = x.options[x.selectedIndex].value;
switch (Number(go)){
case 0:
g.value = “0”;
break;
case 1:
g.value = “1”;
break;
case 2:
g.value = “2”;
break;
case 3:
g.value = “3”;
break;
default:
g.value = “de”;
}
}
</script>
<select name=”tid” id=”tid” class=”BigSelect” onchange=”changeText()” >
<option value=”0″>–请选择类型–</option>
<option value=”1″>abc</option>
<option value=”2″>abc2</option>
<option value=”3″>a3bc</option>
<input type=”text” id=”g” value=”a”>
</select>
如上代码中从下拉列表的选项读出值类型是字符串,无法被switch使用,故加上类型转换。

再谈git

这次试用git是为了对一个程序控制版本

专门搜了一下相关资料。

喏,这有一个教程,采用了 git版本控制

git-clone http://www.bitsun.com/git/gittutorcn.git

windows下创建git服务器还是挺麻烦的,所以干脆就只做本地用的,方便自己查看就好了

说下gui下的操作吧。

自己摸索的。

1、创建仓库,指定到自己的web目录下。

2、全选左侧未缓存的修改,菜单-》提交-》缓存为提交,菜单-》提交-》提交。

3、以后文件修改后重新扫描就会显示出来不同的地方,十分方便。