Lei Xia

Sr. Software Engineer | Solution Architect

抒写代码,尽享生活,筑就未来。

订阅 · 赞赏

avatar

从零开始向DefinitelyTyped贡献代码

2017年10月15日 · 245 字 · 2 分钟

什么是DefinitelyTyped? 讲到DefinitelyTyped,我想做typescript开的人应该不会陌生,DefinitelyTyped是一个由typescript的发明者Microsoft维护的一个项目。 为什么会有DefinitelyTyped? typescript是基于declation的一门语言,declation这个东西有点像C语言的头文件,就是变量、函数等等需要事先声明才能通过typescript编辑。为了方便开发者,也为了快速推广typescript,官方维护的这个项目给npm常用的一些包都定义了declations文件。 既然是托管在github的OpenSource Project,那么只要是github的会员就可以提交PR(当然Merge与否还得看项目组成员),由于社区的活跃使得该仓库越来越丰富。

使用Docker来部署NodeJs应用

2017年10月10日 · 98 字 · 1 分钟

Docker的环境无关性以及自动化特性实在是令人称赞,最近遇到的一个问题是,NodeJs使用8.x版本开发,但是线上服务器是7.x的,这时候又不能动线上的应用。 于是想到了使用Docker来部署NodeJs,服务器是Ubuntu的。 安装Docker apt install docker.

Nginx alias和root指令

2017年9月14日 · 20 字 · 1 分钟

Nginx的root指令相信大家用的都挺多,用来指定document_root,但是如果是针对特定path的请求才启用的话,root指令显得不好用 location /web { root /home/wwwroot/site1; } 访问 http://demo.

Spring Boot JPA 返回json时排除Null字段

2017年7月31日 · 9 字 · 1 分钟

Spring Boot在返回JSON的时候默认会返回null字段,这个对客户端一般没什么作用,还会增加服务器带宽压力。使用如下配置可以屏蔽。 在pojo对象上添加注解 @JsonInclude(JsonInclude.Include.NON_NULL) class User { } 再使用@ResponseBody的时候就不会返回Null字段了。

使用pm2来保证Spring Boot应用稳定运行

2017年7月31日 · 75 字 · 1 分钟

Spring Boot开发web应用就像开发普通的java程序一般简洁,因为其内嵌了web容易,启动的时候只需要一条命令java -jar server.jar即可,非常方便。 但是由此而来的问题是万一应用挂了怎么办?

移动端rem和PSD单位换算问题

2017年7月28日 · 69 字 · 1 分钟

设计图尺寸一般750宽度,而需要兼容640宽度手机的话,需要调整缩放比率,之前使用写死viewport的做法来实现,不过这个方法有点取巧,而且有些场景并不适用。 本文用标准的@media来实现 rem定义 @media screen and (max-width: 750px) { html { font-size: 30px; } } @media screen and (min-width: 640px) and (max-width: 749px) { html { font-size: 25px; } } @media screen and (min-width: 480px) and (max-width: 639px) { html { font-size: 20px; } } @media screen and (min-width: 320px) and (max-width: 479px) { html { font-size: 15px; } } 如何使用 假设PSD中有个button的大小为100px*40px,那使用rem时CSS如下

druid spring boot 统计SQL问题

2017年7月18日 · 46 字 · 1 分钟

spring-boot配置 spring.jpa.hibernate.ddl-auto=validate spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.initialize=true spring.

使用RSA在PHP和NodeJs中进行加密数据通信

2017年6月24日 · 367 字 · 2 分钟

RSA算法是目前用的最多的非对称加密算法,文本将基于openssl在nodejs和php中进行加密数据通信。 生成密钥对 openssl genrsa -out private.

nodejs unhandledRejection问题解决

2017年6月13日 · 11 字 · 1 分钟

今天在使用promise的时候没有catch掉错误,导致报错,类似于 unhandledRejection promise .... 而且不会显示trace信息,导致无从查错,经过google发现,需要监听进程的unhandledRejection事件,才能显示trace信息

nginx反向代理websocket支持跨域

2017年5月24日 · 56 字 · 1 分钟

今天在调试远程websocket的时候发现控制台提示跨域错误,看到浏览器Network中方向响应头没有跨域方面的数据。 nginx做websocket反向代理挺简单的 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_http_version 1.