Skip to content

免费二维码API

http://comet.blog.sina.com.cn/qr?https://feizhaojun.com

http://qr.liantu.com/api.php?text=https://feizhaojun.com&logo=&w=200

http://pan.baidu.com/share/qrcode?w=150&h=150&url=https://feizhaojun.com

http://b.bshare.cn/barCode?site=weixin&url=https://feizhaojun.com

http://s.jiathis.com/qrcode.php?https://feizhaojun.com

http://www.kuaizhan.com/common/encode-png?large=true&data=https://feizhaojun.com

Tomcat本地调试开启https

两步即可:

1 下载证书(http://pan.baidu.com/s/1hrBi0du),将证书放到 Tomcat 安装目录下。(比如我放在 Tomcat 安装目录下的 cert 文件夹中,路径随意,直接放安装目录根目录也可以)

(其实上面这个证书是滥竽充数的,我们只是需要一个加密的.pfx文件)

2 配置 Server.xml。在 Tomcat 安装目录的 conf 文件夹中找到 Server.xml,打开之后,找到端口为 8443 的 Connnector,在这个标签中增加以下属性:

keystoreFile=”cert/214306549150548.pfx” keystoreType=”PKCS12″ keystorePass=”214306549150548″

keystoreFile 就是证书放的位置,刚才我说了我放在 Tomcat 安装目录的 cert 文件夹中。keystoreType 必须为 PKCS12,keystorePass 必须是 214306549150548,是与我提供下载的 .pfx 文件相对应的。

特别注意

如果使用了 Eclipse 集成的 Tomcat,你可能有多个 Server 配置文件,这些配置文件一般在 \项目工作目录.metadata.plugins\org.eclipse.wst.server.core\tmp*\conf 当中,同样,也要注意 证书文件存放的目录要对应上。

因为https证书是和域名相关联的,所以本地调试应该是会提示不安全。解决这个问题:
hosts绑定mock.link到本地IP,因为我是用这个域名申请的证书。
别的办法我就不知道了

前端坑汇总(浏览器Bug)

1 Safari里面如果声明一个没有赋值的全局变量,浏览器会自动在DOM中找id为这个变量名的元素赋值给变量。

IIS7支持JSP(IIS7将80端口转发到Tomcat)

如果是IIS6看这里:IIS支持JSP(Windows2003下IIS6.0配置Tomcat8.0支持JSP)

如果需要 Windows 支持 JSP,我们并不需要通过 IIS,只需要安装 Tomcat 即可。
但是,因为 IIS 已经占用了 80 端口,那么我们在访问 Tomcat 的时候每次都要带上:8080或者其他端口号。
下面我们将实现如何让 Tomcat 和 IIS 共享 80 端口。

1 为了支持Java,下载JDK并安装,我选了1.8.0版本:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2 为了支持JSP,下载Tomcat并安装,我选了8.0版本:http://tomcat.apache.org/download-80.cgi

3 为了连接IIS和Tomcat,下载isapi_redirect并安装,我选了1.2.14版本:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.14/

4 安装isapi_redirect之后,打开 IIS 网站列表,选中默认站点(Default Web Site),该网站下面会出现一个虚拟目录 jakarta。同时,右侧选择“ISAPI 筛选器”,会出现一个jakarta,指向 isapi_redirect 安装目录的 dll 文件。我们不管这个,因为通常我们要新建一个站点。

5 添加网站,物理路径随意。然后,右键该站点,为该站点添加应用程序,名称必须是 jakarta,物理路径指向“isapi_redirect安装目录\bin\”。在选中该 IIS 站点,右侧打开“ISAPI筛选器”,添加,名称必须是 jakarta,可执行文件选择“isapi_redirect安装目录\bin\isapi_redirect.dll”。

6 在IIS中左侧选中计算机名,右侧找到“ISAPI和CGI限制”,添加,路径选择“isapi_redirect安装目录\bin\isapi_redirect.dll”,描述须为 jakarta,并勾选允许执行。

7 点击该站点的应用程序 jakarta,右侧选择“处理程序映射”,右侧“编辑功能权限”,勾选执行。

8 选择该IIS站点,右侧“处理程序映射”,添加脚本映射,路径写 *.jsp,可执行文件“isapi_redirect安装目录\bin\isapi_redirect.dll”,名称随意,比如JSP。

9 isapi_redirect 有两个重要的配置文件,在安装目录的 conf 文件夹,workers.properties.minimal 使用默认配置。修改 uriworkermap.properties 文件,在末尾添加一行 /*=wlb。

10 重启 IIS 和 Tomcat,完工。

如有疑问可以联系我

一些前端解决方案

1. 在手机浏览器中唤起App
2. 通过JavaScript获取移动设备型号

免费图床

七牛云

http://tuchuang.org

https://simimg.com

https://imgchr.com

http://upload.33img.com

JavaScript 工具库 ez.js

项目地址:https://github.com/feizhaojun/ez.js

目前 ez.js 实现的方法:

_.queryString() 获取地址栏参数

_.queryString(‘str’) 参数是一个字符串,返回地址栏 “str” 的值

_.queryString() 参数为空,返回一个对象,以键值对形式包含了所有地址栏参数,如:

http://www.domain.com/?name=ez&id=1

_.queryString(‘name’) // ‘ez’

_.queryString() // {‘name’:’ez’,’id’:’1′}

如果同时使用了?和#(?在前,#在后):

http://www.domain.com/?name=ez&id=1#foo=bar&id=2

如果出现了明明冲突,如 id ,会以 ? (search)携带的参数为准。 _.queryString() 会忽略 # 携带的参数

_.queryString(‘id’) // ‘1’ _.queryString() // {‘name’:’ez’,’id’:’1′}

如果同时使用了?和#(#在前,?在后):

http://www.domain.com/#foo=bar&id=2?name=ez&id=1

因为对于地址栏来说,这是一种不规范的写法,我们会将?忽略。

_.queryString(‘id’) // ‘2?name=ez&id=1’ _.queryString() // {‘foo’:’bar’,’id’:’2?name=ez&id=1′}

_.queryString([]) 参数是一个空数组,返回一个数组,包含两个对象,第一个是?后面的参数,第二个是#后面的参数,如:

http://www.domain.com/?name=ez&id=1#foo=bar&id=2

_.queryString([]) // [{‘name’:’ez’,’id’:’1′}, {‘foo’:’bar’,’id’:’2′}]

_.queryString([‘-‘]) 参数是一个数组且包含一个字符串的元素,返回以该字符串分割的参数,如:

http://www.domain.com/?static/img/ico#foo/bar/js

_.queryString([‘/’]) // [[‘static’,’img’,’ico’],[‘foo’,’bar’,’js’]]

前端扩展插件

模拟数据:
Easy Mock
野狗

JavaScript 交互
waypoints 滚动到某元素触发某事件

JavaScript UI工具:
autosize 自动调整textarea输入框大小

JavaScript 展示
轮播 switchable
Fullpage.js
highlight.js 语法高亮

JavaScript 特效库
particles.js 创建炫酷的粒子效果
typed.js 打字动画库
Motio 动画和平移雪碧图

在Sublime Text 3 中使用SFTP

SFTP 插件的作用是允许你使用Sublime Text直接通过FTP编辑服务器文件,并在保存时实时同步到服务器。
更多 Sublime Text 插件:Sublime Text资源汇总
———-

1 安装
使用 Package Control 安装:
1 Shift + Ctrl + p
2 输入“pci”,回车
3 输入“sftp”,选择安装

2 配置
在 Sublime Text 菜单找到:File -> SFTP/FTP -> Setup Server…
弹出一个配置文件,修改下面几个配置项:
“type”:”ftp”
“host”:”你的FTP服务器地址”
“user”:”你的FTP用户名”
“password”:”你的FTP密码”
“port”:”FTP服务器端口,一般是21″
“remote_path”:”登陆FTP默认进入的目录”

配置完成后保存,就可以点选 “File -> SFTP/FTP -> Browse Server…” 看到你配置的服务器。
或者使用 Package Control 快捷方式调出配置的FTP服务器:
Shift + Ctrl + p -> 输入“sftp” -> 选择 “SFTP:Browse Server…”

3 遇到的问题

如果是Windows服务器,在链接过程中可能会出现 Encoding error。
这时候找到你刚刚保存的sftp配置文件,把配置项remote_encoding改为:
“remote_encoding”: “iso-8859-15”
如果还不行,也可以尝试其他编码。

IE下载保存base64文件

如果一个超链接的链接地址是一个base64的代码,如下:

<a href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABJdJREFUeNrsV2toXEUYPXPvPtPsJpuNTdo0zTsGrbam1oBWJFVjJUrTai1YKMZCMaItKFL1R1GhBEpJQXyiECgqiELFEgmijamgBolpkiZtHrt5tzHJJpvd7PPeu+M3txtN2sZsodgfZuDjDnfmO+fM95i7yzjnuJVDwi0eKwJWBKwIYInsefXzzDxrinaYM7WMydrGGNdgNaZAkhwIRtwEYrqkRU11tTsmT9D+2M0SIL15KnOfwRr5yGgwm0uzDiDX+TiKnVkwSNmLNg75L6F7/Bj+GP0UAV/Sa7VVk3WJCrmugGffcqbmb2E/25PSNjxc/A5K1+7BrAqMhgDvbCXG0ICoqsEsc3CCKLTJKEgGTFIAjb3PoNX12zdHn5jeTVDqjQpgL32yOj81O9JflvMcthUdx0TUgLapGFwBDTIzwhFmmLXS9c0jtF3TnWIEo3EJmxxmPHAb8PvYC2ju/Pr4kUrP639vSkAAq/kwoyAtL9T31F11uGftfoz6gZkwINOiTOUq0e6fBhjK8zliCwLM46bRO6sJyE8Bvui6G3s3dFJcEPg3AYYFc5OjSOnbWXIChZnP48wUdBJBKhG5zK6IUOndBM1j10keJ6UaBT04B+Taq/D2D0NzikqKNLlJU/nJ2h0TJ6+ujXkYY7sDw+5zb2RWrj+My3ONYFzVe1SJBdEz2YALE6dhkJNIkAUxCj/XU0AATCaQKzCiOxilqdBZgdKsGr0EGDMgqgXQOvotmi/Wtx3aGh7OSTc/PV8fwlNuuy/9mGMu8IqlqxVT3u8wNtsABT590cgcWJe8HWElhGbXexQFI5Fr2F78Ps7/+RnGfC1EIkF81rVYFA8VvAyL0YrRue+hcK8uzkTtmpX8CKYD48i011BB546XOuX14nyCY5Wvotjje7DI3FOzBh29DejpiyISvXIqC0WwpMiCjdnb4PH7MOhpJUJGhDH9KcgFSYzyleMshdNmR/vIGVzsCyMcxQIME+7IKsPtGUdgNG9Ciydwuio9eZeoAcvgFot58EAaensb0d0hQep6DJLXqTsrqR50hM4ipjXhznXlUDVGNSFIxanng8j1ArRZ7WgbbML5LnrbVbEIoz3UDEX7BY6UX7H50Z0odQ0+SUtWIUD+qsKLkpkLGHBpRF5ORXgvCrbm6M6u/iH0E2B/UhMy07qJSJz+mu6l/DN4gt3oH6C8L4HhTvoRGekf49RRBcxAGbh/2CzqjKsefm7WP4OoCJk3HQWFOVDUiG5iDjpJ1L8K/sg0uAg/8V9rDN4QYShLYyh+G4JhP6yaEdExflYoFxGI1O4a2f9uS06rzcbhYxRLxv/pDzGXOGyr56iazRjqkfS2XHSDcNGyDCmbVdjsy2CoZrg6ma/+4MghWgkLAUGyywfLhsro6di3N/KB2+3Ozy/I033dLjc5Rdx1u8dfTORqFXfLMhgiRj7BSRaa12gS3UBmJ1tTXV39pcEgkkSMqjpcX1+/Z94hAQHWBDCi8RtSubqajGSidLPiYhBXO0bmiatfbtwQBlsCICkeFcTVBhMkv5kY/9EvopV/RisC/vcC/hJgABG9CR0EnLuyAAAAAElFTkSuQmCC" download="picture-test.png">下载</a>

页面中的效果显示如下:

下载

在Chrome等现代浏览器当中,点击下载会直接保存图片。但是在IE当中无效,因为IE不支持直接保存base64文件。那IE如何解决这个问题呢?

在IE当中可以使用 msToBlob() 方法转换成 blob 文件,然后用 msSaveBlob() 方法来保存。


var blobObj = new Blob( [ $('a').attr('href') ] );
// 或者直接将 canvas 文件转成 blob,var blobObj = canvas.msToBlob();
navigator.msSaveBlob(blobObj, 'picture-test.png');

官方参考:https://technet.microsoft.com/ZH-CN/Library/hh779016.aspx

HTML5文件保存相关库:https://github.com/eligrey/FileSaver.js


TOP