Posts
bootstrap3的富文本编辑器
官网上的例子是bootstrap-wysiwyg,但仅针对bs2
后来找了个能用的http://summernote.org/#/deep-dive#api-summernote
名为summernote
Posts
ie模式设置与ajax跨域的问题
在ie中默认没有以下标签很可能会按兼容模式渲染页面,如果ie版本大于10的时候加上这个就会有用.
关于ajax跨域,之前总以为加上access-controll-allow-origin就可以,最近发现即使加上了这些access-controll-allow的header,ajax跨域是可以请求了,但是cookie是肯定带不过去的,想在ajax请求前加上cookie或者自定义的一些头信息,会被浏览器安全策略阻止.看来安全跨域只有用jsonp.通过jsonp带来子域的cookie,并且服务端需要设置该cookie可以在一级域名中的作用域.这样页面端域名的js也可以取到jsonp带来的cookie了,然后通过url或其他方法在每个请求上将cookie传递过去即可让服务端获取session.
Posts
js数字的限制位数
当后端传来的id过大时,js取得的精度最多有17位,比如当传入19位数字时,最后两位会自动置0,虽然支持的数字很大,但精度也就17位。
解决的方法要不将id改小,要不就将id按字符串传递。
Posts
前端的包管理器
今天从
https://github.com/componentjs/component/blob/master/disambiguation.md
看到
https://github.com/wilmoore/frontend-packagers
看了一些前端库管理工具
bower已经用的很熟了,和wiredep和gulp-useref配合熟练开发和发布.
不过也很看好npm + browserify
component看上去也不错,不过维护组分成了normalize.io和duojs,未来不太可知也.
看来是组内的开发思路分道扬镳了.
amd规则的requirejs一直没用,一开始看觉得挺新颖,但后来觉得这个规则强制改变了很多js原生库的写法,有些库不支持amd规则还需要手工修补.
最重要的是nodejs工具会把所有依赖库都打包,之后就都是同步加载了,最大的减少了amd规则的依赖性.只有用cdn加载各种依赖库的情况下例外.
browserify将commonjs规则引入前端这个才是趋势,不过也可能是我常年的服务端思想惯性使然吧.
Posts
postfix 垃圾邮件问题
邮件服务器又出问题,上去一看根目录满了,清空了邮件日志,并查看了一下最新的日志发现大量发送垃圾邮件
以前出过一次这种错误,从日志上能看出是哪个帐号有问题,禁用这个帐号或者改个新密码就可以了
这次是大量邮件匿名发送,from=<>,也没有记录客户端ip
晚上弄了一会,先停了postfix,再清空队列。
在再/etc/postfix/main.cf加了一行
Posts
swagger-ui与grape-swagger
今天进一步熟悉了一下swagger-ui与swagger-spec。
之前面试时听说过grape,今天实验了一下感觉非常好,ruby的东西就是上手快。
想偷懒点用grape-swagger生成,搞了半天发现grape-swagger生成的swagger1.2规范与swagger2不兼容。
只好还是自己写json文件。
swagger配合grape很和谐,希望grape-swagger什么时候能升级兼容swagger2
Posts
推荐semantic-ui
最近看上了semantic-ui
在ui方面可以替代bootstrap,效果方面比bootstrap-material-design还要出色,再加上meterial-design还没有完成。
semantic的api接口module方面做的挺不错,让一个ui框架还能干一些路由层的活,对于不用大框架的项目来说方便极了。
项目上最后没用semantic作ui,还是用的bootstrap.不过api用的不错,十多k也不大.
项目伪ajax请求用sinon很方便.
顺带还发现了jquery-form,也不用再到处找支持ajax文件上传的插件了。
Posts
samba启动
今弄一个共享文件夹,装个samba,弄完之后忘了两个步骤,记录一下.
先是service samba restart
Failed to restart samba.service: Unit samba.service is masked.
samba分成smbd和nmbd
更改smb.conf之后只service smbd reload
然后是用户密码,更改了系统用户密码后始终不能登录,忘了smbpasswd这条了
smbpasswd -a user设置密码
Posts
关于karma的base路径
karma的karma.conf.js中的basePath是关于本地路径的设置,如果不设置就是karma.conf.js所在的路径.
files里的路径都是基于karma.conf.js里来匹配的.都属于后端路径.这个概念我一开始没搞清楚前后端路径,调试了不少时间.
在files里比如有”public/img/*.png”,则 karma start之后会在chrome里(假设使用chrome-launcher),在浏览器中访问 /base/public/img/[img name].png
即可访问到后端提供的文件.前端路径中的base是固定的.
最开始的时候我还以为前端的这个base和配置文件里的那个basePath有什么关联呢,还在本地建立了个base文件夹试了试也访问不到.
为了在karma打开的浏览器中能访问到该fixtures,还需要在karma的配置文件中添加该fixtures的路径为serverd: true
{pattern: ‘test/fixtures/*.html’, served: true}
Posts
ERROR 1615 (HY000): Prepared statement needs to be re-prepared
今天部署到服务器,运行之后报错,一开始还以为是golang的mysql库的问题.
生成的sql语句在服务器上手动执行也没问题.
最可气的是执行的sql语句经过过滤报错,若直接将客户端变量与sql语句相加生成的sql语句不报错.简直是把人往sql注入的坑里带.
后来查到
https://www.linuxwind.org/page/2
改了mysql的俩量之后,总算通过了.