为了工作方便,最近封装了一个npm包上传的公网上去了,在项目中引用,用的时候还算好使。
项目提测的时候,产品经理说有界面有问题,检查了之后发现,那个npm报错了。
产品经理使用的是window版本的chrome,我们几个开发的,使用的是Mac版本的chrome。
原来在不同系统之间的同类型浏览器,也有兼容性问题。
类似的,还有Windows、Linux与Mac版本的Firefox、Windows与Mac版本的Safari
不过好在应当问题不多,写代码的时候需要注意,少用一些奇技淫巧……
为毛你的界面跟别人的都不一样?
最近幺蛾子事情多,公司的一个测试的姑娘,报了一个bug,她的电脑,请求某个接口,总是报错。
而我们其余人的电脑,是没问题的。
她自己检查了host、浏览器、浏览器版本、浏览器插件、缓存,都发现不了端倪。
我过去抓包看了一下,发现响应头与正常的响应头对比,少了N多参数,但是多了一个leeco。
我们公司前段时间为大家的电脑,都安装了趋势杀毒软件,后来有的同事报安装杀毒软件之后收不到邮件的问题。
然后卸载杀毒软件,重启,OK了,正常了。
—————————我是华丽的分割线—————————
总结了一下,为毛你的界面跟别人的都不一样?
X-Frame-Options 与 iframe嵌套
莫名其妙碰到一个bug,我们后台的一个界面,在我们外层界面使用iframe嵌套的话,该界面会显示空白,没发出任何请求,而单独打开该界面的话,立马正常显示。
抓包看之,结果该界面的响应头,多了一个X-Frame-Options
头,值为deny
百度之,该响应有如下作用:
修改web服务器配置,添加X-frame-options
响应头。赋值有如下三种:
- (1)
DENY
:不能被嵌入到任何iframe或frame中。 - (2)
SAMEORIGIN
:页面只能被本站页面嵌入到iframe或者frame中。 - (3)
ALLOW-FROM uri
:只能被嵌入到指定域名的框架中。
该参数可以有效防止界面被不法网站iframe嵌套,兼容性好,十分有效
恍然大悟,通知后台修改了一下。又学了一招。
js sort方法根据数组中对象的某一个属性值进行排序
get到一个实用技能,sort方法接收一个函数作为参数,这里嵌套一层函数用来接收对象属性名,其他部分代码与正常使用sort方法相同
|
|
大前端兼容性规范——H5页
wap端兼容的规则1.0版本
经过产品、前端、测试同学沟通,制定官网wap端兼容的规则1.0版本:
一、理论上兼容所有情况
二、根据实际人力资源情况,官网wap端着重兼容如下:
- 1、前端反馈的兼容机型:苹果(5-7 p)、三星、小米、乐视、华为各种常规机型—主要是按照屏幕大小
- 2、wap端访问量>5%的浏览器:Chrome移动版(58%)、微信浏览器(10%)、手机百度(9%)、安卓机自带浏览器Android Webkit Browser(13% 机型:三星、小米、乐视、华为)
数据支撑:
按照数据运营提到的数据,兼容的wap端的浏览器: Chrome移动版占绝大多数(58%),其次是Android Webkit Browser(13%)、微信浏览器(10%)、手机百度(9%)、UC端浏览器(4%)
按照原则 >5%的浏览器均兼容
浏览器 | PV | UV | IP | |
---|---|---|---|---|
Chrome移动版 | 1,043,334 | 746,074 | 734,267 | |
Android Webkit Browser | 220,583 | 160,664 | 159,505 | |
微信浏览器 | 181,617 | 131,306 | 129,262 | |
手机百度 | 140,449 | 117,646 | 117,109 | |
Safari移动版 | 82,431 | 55,953 | 53,733 | |
UC浏览器(其他) | 32,845 | 18,923 | 19,119 | |
QQ手机浏览器 | 10,453 | 7,130 | 7,123 | |
百度手机浏览器 | 8,116 | 6,267 | 6,295 | |
猎豹手机浏览器 | 3,737 | 3,008 | 3,009 | |
360手机浏览器 | 2,085 | 1,401 | 1,499 |
抽奖活动H5界面交互逻辑——流程图
最近开发了app嵌入的抽奖H5界面,技术上倒是不难,不过逻辑上需要仔细梳理。
抽奖活动,有如下前置条件。
- 必须通过app端打开
- app端必须登录
- 抽奖活动有时间限制
- 每个用户每天抽奖有时间限制
刚好产品经理请假,我就包揽了抽奖H5界面的产品逻辑、交互,以及前端代码编写工作,主要就是如下的流程图。
抽奖与钱相关,要前后端做好,以免在技术角度上被攻陷
https改造:(二)实际动手
https改造:(一)为什么要改造
koa2技术架构-脑图版
直接先上图。
最近研究了koa2,连接mongoDB做了一个小demo,github地址:https://github.com/loulanyijian/koa2-demo,重新找回之前写Java的感觉。
koa2也是使用的mvc的架构,业务逻辑都写在service层里面,虽然离Java还有很大差距,但是做个小后台应用,应当足够了。